Установка и настройка PHP 7 на CentOS 7
Установка и настройка PHP 7 на CentOS 7
Install PHP 7 on CentOS 7
В этом руководстве мы объясним, как установить или обновить до PHP 7.0. 7.1, 7.2 и 7.3 в системе CentOS 7. Мы также покажем вам, как интегрировать PHP с Nginx и Apache.

С помощью PHP 7 ваши приложения будут загружаться быстрее и потреблять меньше системных ресурсов. Также перед установкой конкретной версии PHP 7.x убедитесь, что она поддерживается вашим приложением.
Перед началом работы с этим учебником убедитесь, что вы вошли на свой сервер с учетной записью пользователя с привилегиями sudo или с пользователем root. Лучше всего запускать административные команды от имени пользователя sudo вместо root. Если в вашей системе нет пользователя sudo, вы можете создать его, следуя этим инструкциям.
Включение репозитория Remi
Пакеты PHP 7.x доступны в нескольких разных репозиториях. Мы будем использовать репозиторий Remi, который предоставляет более новые версии различных пакетов программного обеспечения, включая PHP.
Репозиторий Remi зависит от репозитория EPEL . Запустите следующие команды, чтобы включить репозитории EPEL и Remi:
sudo yum install epel-release yum-utils
sudo yum install http://rpms.remirepo.net/enterprise/remi-release-7.rpm
Yum может предложить вам импортировать ключ GPG из репозитория. Введите y
и нажмите Enter
.
В следующих разделах мы расскажем, как установить PHP 7.x, включив соответствующий репозиторий Remi. Если в вашей системе уже установлен PHP 5.4, yum
обновятся пакеты PHP.
Установка PHP 7.3 на CentOS 7
PHP 7.3 является последней стабильной версией PHP. Большинство современных PHP-фреймворков и приложений, включая WordPress, Drupal, Joomla и Laravel, полностью поддерживают PHP 7.3.
Выполните следующие шаги, чтобы установить PHP 7.3 на CentOS 7.
-
Начните с включения репозитория PHP 7.3 Remi:
sudo yum-config-manager --enable remi-php73
-
Установите PHP 7.3 и некоторые из наиболее распространенных модулей PHP:
sudo yum install php php-common php-opcache php-mcrypt php-cli php-gd php-curl php-mysqlnd
-
Проверьте установку PHP, введя следующую команду, которая выведет версию PHP:
php -v
PHP 7.3.1 (cli) (built: Jan 8 2019 13:55:51) ( NTS ) Copyright (c) 1997-2018 The PHP Group Zend Engine v3.3.1, Copyright (c) 1998-2018 Zend Technologies with Zend OPcache v7.3.1, Copyright (c) 1999-2018, by Zend Technologies
Установка PHP 7.2 на CentOS 7
Используйте PHP 7.2, только если вы собираетесь устанавливать такие приложения, как Magento 2, которые не совместимы с PHP 7.2.
Следующие шаги описывают, как установить PHP 7.2 CentOS 7.
-
Сначала включите репозиторий PHP 7.2 Remi, выполнив следующую команду:
sudo yum-config-manager --enable remi-php72
-
После того, как хранилище включено, установите PHP 7.2 и несколько наиболее распространенных модулей PHP:
sudo yum install php php-common php-opcache php-mcrypt php-cli php-gd php-curl php-mysqlnd
-
Проверьте установку PHP:
php -v
PHP 7.2.9 (cli) (built: Aug 15 2018 09:19:33) ( NTS ) Copyright (c) 1997-2018 The PHP Group Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies with Zend OPcache v7.2.9, Copyright (c) 1999-2018, by Zend Technologies
Установка PHP 7.1 на CentOS 7
Следуйте инструкциям ниже, чтобы установить PHP 7.1.
-
Включите репозиторий PHP 7.1, набрав:
sudo yum-config-manager --enable remi-php71
-
Установите PHP 7.1 и несколько наиболее распространенных модулей PHP:
sudo yum install php php-common php-opcache php-mcrypt php-cli php-gd php-curl php-mysql
-
Чтобы проверить установку, выполните следующую команду, которая выведет версию PHP:
php -v
PHP 7.1.21 (cli) (built: Aug 15 2018 17:56:55) ( NTS ) Copyright (c) 1997-2018 The PHP Group Zend Engine v3.1.0, Copyright (c) 1998-2018 Zend Technologies with Zend OPcache v7.1.21, Copyright (c) 1999-2018, by Zend Technologies
Настройка PHP 7.x для работы с Apache
Если вы используете Apache в качестве веб-сервера, просто перезапустите службу Apache, используя следующую команду, и все готово:
sudo systemctl restart httpd
Настройка PHP 7.x для работы с Nginx
В отличие от Apache, Nginx не имеет встроенной поддержки для обработки файлов PHP, поэтому нам нужно установить отдельное приложение, такое как PHP FPM, которое будет обрабатывать файлы PHP.
sudo yum install php-fpm
По умолчанию PHP FPM будет работать как пользователь apache
на порту 9000. Мы изменим пользователя на nginx
и переключимся с сокета TCP на сокет Unix. Для этого отредактируйте линии, выделенные желтым цветом:
...
user = nginx
...
group = nginx
...
listen = /run/php-fpm/www.sock
...
listen.owner = nginx
listen.group = nginx
Убедитесь, что /var/lib/php
каталог имеет правильное владение :
chown -R root:nginx /var/lib/php
После внесения изменений включите и запустите службу PHP FPM:
sudo systemctl enable php-fpm
sudo systemctl start php-fpm
Затем отредактируйте директиву виртуального хоста Nginx и добавьте следующий блок местоположения, чтобы Nginx мог обрабатывать файлы 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;
}
}
Чтобы новая конфигурация вступила в силу, перезапустите службу Nginx :
sudo systemctl restart nginx
Вывод
Вы узнали, как установить PHP 7 на вашем сервере CentOS и как настроить веб-сервер для обработки файлов PHP.
Комментарии
Если у вас есть вопросы, не стесняйтесь оставлять комментарии ниже.