Как установить PHP на CentOS 8

12 set 2022 3 min di lettura
Как установить PHP на CentOS 8
Indice dei contenuti

Введение

PHP — один из наиболее часто используемых серверных языков программирования. Многие популярные CMS и фреймворки, такие как WordPress, Magento и Laravel, интегрированы в PHP.

В этом руководстве мы увидим, как установить PHP 7.2, 7.3 или 7.4 на CentOS 8. Прежде чем выбрать версию PHP для установки, убедитесь, что ваши приложения поддерживают ее.

CentOS 8 распространяется с PHP 7.2. Эта версия поддерживает большинство современных приложений PHP, но с ноября 2019 года больше не будет активно поддерживаться. Последние версии PHP доступны в репозитории Remi.

Мы также покажем вам, как интегрировать PHP с Nginx и Apache.

Если вы хотите установить PHP на удаленный сервер, продолжайте читать, в противном случае, если вы хотите установить PHP на свой локальный компьютер, пропустите первый абзац «Подключение к серверу» и прочитайте следующий.

Подключение к серверу

Чтобы получить доступ к серверу, вам нужно знать IP-адрес. Вам также потребуется ваше имя пользователя и пароль для аутентификации. Чтобы подключиться к серверу как root, введите следующую команду:

ssh root@IP_DEL_SERVER

Далее вам нужно будет ввести пароль пользователя root.

Если вы не используете пользователя root, вы можете войти в систему с другим именем пользователя, используя ту же команду, а затем изменить root на свое имя пользователя:

ssh nome_utente@IP_DEL_SERVER

Затем вам будет предложено ввести пароль пользователя.

Стандартный порт для подключения по ssh — 22, если ваш сервер использует другой порт, вам нужно будет указать его с помощью параметра -p, затем введите следующую команду:

ssh nome_utente@IP_DEL_SERVER -p PORTA

Включить репозиторий Remi

Если вы собираетесь установить стабильную версию PHP 7.2, пропустите этот шаг. В противном случае, если вы хотите установить PHP 7.3 или 7.4, включите репозиторий Remi, выполнив следующую команду от имени пользователя root или пользователя с привилегиями sudo:

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

Приведенная выше команда также активирует репозиторий EPEL.

После завершения установки выполните следующую команду, чтобы получить список всех доступных версий PHP:

sudo dnf module list php

На выходе будет показан список всех доступных модулей, включая связанные потоки, версии и профили установки.

CentOS-8 - AppStream
 Name Stream Profiles Summary
 php 7.2 [d] 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

Модуль PHP по умолчанию установлен на PHP 7.2. Чтобы установить более новую версию PHP, включите соответствующую версию:

Чтобы включить PHP 7.3:

sudo dnf module reset php

sudo dnf module enable php:remi-7.3

Чтобы включить PHP 7.4:

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

Теперь вы готовы установить PHP на свой сервер CentOS.

Установить PHP

Следующая команда установит PHP и некоторые из наиболее распространенных модулей PHP:

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

PHP использует FPM, устанавливается как зависимость и используется как сервер FastCGI. Запустите службу FPM и включите ее автоматический запуск при запуске сервера:

sudo systemctl enable --now php-fpm

Настройте PHP для работы с Apache

Если вы используете Apache в качестве веб-сервера, перезапустите службу httpd с помощью следующей команды:

sudo systemctl restart httpd

Настроить PHP для работы с Nginx

По умолчанию PHP FPM запускается от имени пользователя apache. Чтобы не было проблем с авторизацией, поменяем пользователя на nginx.

Откройте следующий файл:

sudo vi /etc/php-fpm.d/www.conf

Измените имя пользователя на строки пользователя и группы, с apache на nginx:

...
 user = nginx...
 group = nginx

Убедитесь, что каталог /var/lib/php имеет правильные разрешения:

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

После этого перезапустите службу PHP FPM:

sudo systemctl restart php-fpm

Затем отредактируйте директиву виртуального хоста Nginx и добавьте следующий блок, чтобы Nginx мог обрабатывать файлы PHP:

server {

 #Il resto del codice..

 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;
 }


 }

Чтобы новая конфигурация вступила в силу, перезапустите службу Nginx:

sudo systemctl restart nginx

Вывод

PHP 7.2 доступен для установки из стандартных репозиториев CentOS 8. Если вы хотите установить более новую версию, вам необходимо включить репозиторий Remi.

Support us with a

Successivamente, completa il checkout per l'accesso completo a Noviello.it.
Bentornato! Accesso eseguito correttamente.
Ti sei abbonato con successo a Noviello.it.
Successo! Il tuo account è completamente attivato, ora hai accesso a tutti i contenuti.
Operazione riuscita. Le tue informazioni di fatturazione sono state aggiornate.
La tua fatturazione non è stata aggiornata.