In questo articolo, avremo spiegato i passaggi necessari per installare e configurare Apache con PHP-FPM su CentOS 8. Prima di continuare con questo tutorial, assicurati di aver effettuato l'accesso come un utente con sudo
privilegi. Tutti i comandi in questo tutorial devono essere eseguiti come utente non root.
Prerequisito:
- Sistema operativo con CentOS 8
- Indirizzo IPv4 del server con privilegi di superutente (accesso root)
- Terminale Gnome per desktop Linux
- Client PuTTy SSH per Windows o macOS
- Powershell per Windows 10/11
- Familiarità con i comandi DNF
Installa Apache con PHP-FPM su CentOS 8
Passaggio 1. Il primo comando aggiornerà gli elenchi dei pacchetti per assicurarti di ottenere l'ultima versione e le dipendenze.
sudo dnf update
Passaggio 2. Installa Apache.
Apache è disponibile nei repository CentOS predefiniti, sei pronto per installare Apache:
sudo dnf install httpd httpd-tools mod_ssl
Una volta completata l'installazione, abilita e avvia il servizio Apache:
sudo systemctl enable httpd sudo systemctl start httpd
Puoi anche controllare la versione del tuo server web per assicurarti che sia stata installata correttamente:
httpd -v
Durante l'installazione, Apache crea file di servizio firewalld con regole predefinite per consentire l'accesso alle porte HTTP (80) e HTTPS (443). I seguenti comandi apriranno permanentemente le porte necessarie:
sudo firewall-cmd --permanent --zone=public --add-service=http sudo firewall-cmd --permanent --zone=public --add-service=https sudo firewall-cmd --reload
Passaggio 3. Installa PHP con PHP-FPM.
Per installare PHP 7.4, puoi abilitare il repository Remi eseguendo il seguente comando:
sudo dnf install dnf-utils http://rpms.remirepo.net/enterprise/remi-release-8.rpm
Successivamente, abilita la versione appropriata:
sudo dnf module reset php sudo dnf module enable php:remi-7.4
Il seguente comando installerà PHP-FPM e alcuni dei moduli PHP più comuni:
sudo dnf update sudo apt install php php-fpm php-gd php-mysqlnd
PHP utilizza FPM è installato come dipendenza e utilizzato come server FastCGI. Avvia il servizio FPM e abilitalo per l'avvio automatico all'avvio:
sudo systemctl enable --now php-fpm sudo systemctl start php-fpm
Passaggio 4. Configura PHP-FPM.
Iniziamo il processo di configurazione. Innanzitutto, modifica il file di configurazione PHP-FPM per Apache:
sudo nano /etc/php-fpm.d/www.conf
; listen = 127.0.0.1:9000 listen = /run/php-fpm/www.sock user = apache group = apache listen.allowed_clients = 127.0.0.1 listen.owner = apache listen.group = apache listen.mode = 0660 pm = dynamic
Riavvia il servizio php-fpm usando il seguente comando e sei a posto:
sudo systemctl restart php-fpm
Passaggio 5. Crea Apache VirtualHost.
Ora, è il momento di configurare Apache per utilizzare php-fpm per l'elaborazione dei file PHP. Per questo esempio, sto configurando FPM solo per un host virtuale specifico:
sudo nano /etc/httpd/conf.d/example.com.conf
<VirtualHost *:80> ServerAdmin [email protected] DocumentRoot /var/www/html ServerName example.com ServerAlias www.example.com # Proxy declaration <Proxy "unix:/run/php-fpm/www.sock|fcgi://php-fpm"> # we must declare a parameter in here (doesn't matter which) or # it'll not register the proxy ahead of time ProxySet disablereuse=off # Note: If you configure php-fpm to use the "pm = ondemand" #then use "ProxySet disablereuse=on" </Proxy> <FilesMatch \.php$> SetHandler proxy:fcgi://php-fpm </FilesMatch> ErrorLog logs/example.com-error.log CustomLog logs/example.com-access.log combined </VirtualHost>
Salva il file di configurazione dell'host virtuale e ricarica Apache per applicare le modifiche:
sudo systemctl restart httpd
Passaggio 6. Verifica dell'installazione.
Per testare l'ambiente, crea uno script PHP con la funzione phpinfo(). Posiziona questo file nella radice del documento del tuo server. Utilizzare il comando seguente per eseguire questa operazione:
echo "<?php phpinfo(); ?>" > /var/www/html/info.php
Quindi, accedi a info.php utilizzando l'indirizzo IP del server (per VirtualHost predefinito) per il tuo dominio configurato in Apache VirtualHost.
http://localhost/info.php
Questo è tutto ciò che devi fare per installare LAMP Stack su CentOS 8. Spero che questo suggerimento rapido ti sia utile. Se hai domande o suggerimenti, sentiti libero di lasciare un commento qui sotto.