GNU/Linux >> Linux Esercitazione >  >> Cent OS

Come installare PHP su CentOS 8

PHP è uno dei linguaggi di programmazione lato server più utilizzati. Molti CMS e framework popolari come WordPress, Magento e Laravel sono costruiti in PHP.

In questa guida, discuteremo come installare PHP 7.2, 7.3 o 7.4 su CentOS 8. Prima di scegliere quale versione di PHP installare, assicurati che le tue applicazioni la supportino.

Ti mostreremo anche come integrare PHP con Nginx e Apache.

Installazione di PHP su CentOS 8 #

CentOS 8 è distribuito con PHP 7.2. Questa versione supporta la maggior parte delle moderne applicazioni PHP, ma non sarà più gestita attivamente a partire da novembre 2019. Le versioni PHP più recenti sono disponibili dal repository Remi.

Abilita il repository Remi #

Se hai intenzione di installare la versione 7.2 di PHP stabile della distribuzione, salta questo passaggio. Altrimenti, se vuoi installare PHP 7.3 o 7.4 abilita il repository Remi eseguendo il seguente comando come root o utente con privilegi sudo:

sudo dnf install dnf-utils http://rpms.remirepo.net/enterprise/remi-release-8.rpm

Il comando sopra abiliterà anche il repository EPEL.

Una volta completata l'installazione, esegui il comando seguente per ottenere un elenco di tutte le versioni PHP disponibili:

sudo dnf module list php

L'output mostrerà un elenco di tutti i moduli disponibili, inclusi il flusso associato, la versione e i profili di installazione.

Last metadata expiration check: 0:02:11 ago on Fri 18 Oct 2019 08:31:43 PM UTC.
CentOS-8 - AppStream
Name    Stream       Profiles                     Summary                 
php     7.2 [d][e]   common [d], devel, minimal   PHP scripting language  

Remi's Modular repository for Enterprise Linux 8 - x86_64
Name    Stream       Profiles                     Summary                 
php     remi-7.2     common [d], devel, minimal   PHP scripting language  
php     remi-7.3     common [d], devel, minimal   PHP scripting language  
php     remi-7.4     common [d], devel, minimal   PHP scripting language  

Hint: [d]efault, [e]nabled, [x]disabled, [i]nstalled

Il modulo PHP predefinito è impostato su PHP 7.2. Per installare una versione PHP più recente, abilita la versione appropriata:

PHP 7.3

sudo dnf module reset phpsudo dnf module enable php:remi-7.3

PHP 7.4

sudo dnf module reset phpsudo dnf module enable php:remi-7.4

Ora sei pronto per installare PHP sul tuo server CentOS.

Installa PHP #

Il comando seguente installerà PHP e alcuni dei moduli PHP più comuni:

sudo dnf install php php-opcache php-gd php-curl php-mysqlnd

FPM viene 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

Configurazione di PHP per funzionare con Apache #

Se SELinux è in esecuzione sul tuo sistema, dovrai aggiornare il contesto di sicurezza di SELinux:

sudo chcon -Rt httpd_sys_rw_content_t /var/www

Se stai usando Apache come server web, riavvia httpd servizio utilizzando il seguente comando e sei a posto:

sudo systemctl restart httpd

Configurazione di PHP per funzionare con Nginx #

Per impostazione predefinita, PHP FPM viene eseguito come utente apache . Per evitare problemi di autorizzazione, cambieremo l'utente in nginx . Per farlo, modifica le linee evidenziate in giallo:

sudo nano /etc/php-fpm.d/www.conf
/etc/php-fpm.d/www.conf
...
user = nginx
...
group = nginx

Assicurati che il /var/lib/php directory ha la proprietà corretta:

chown -R root:nginx /var/lib/php

Al termine, riavvia il servizio PHP FPM:

sudo systemctl restart php-fpm

Quindi, modifica la direttiva dell'host virtuale Nginx e aggiungi il seguente blocco di posizione in modo che Nginx possa elaborare i file PHP:

server {

    # . . . other code

    location ~ \.php$ {
        try_files $uri =404;
        fastcgi_pass unix:/run/php-fpm/www.sock;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include fastcgi_params;
    }
}

Per rendere effettiva la nuova configurazione, riavvia il servizio Nginx:

sudo systemctl restart nginx

Aggiorna il contesto di sicurezza di SELinux:

sudo chcon -Rt httpd_sys_rw_content_t /var/www

Cent OS
  1. Come installare PHP 5.5 su CentOS

  2. Come installare PHP 5.6 su CentOS 7

  3. Come installare PHP 7.3 su CentOS 8

  4. Come installare PHP 7.4 su CentOS 7

  5. Come installare PHP 7.2 su CentOS 7

Come installare Craft CMS su CentOS 7

Come installare Bolt CMS su CentOS 7

Come installare Pagekit CMS su CentOS 7

Come installare Grav CMS su CentOS 7

Come installare ExpressionEngine CMS su CentOS 8

Come installare PHP 7 su CentOS 7