Установка PHP 7 на Centos 7

После устаноки Nginx на сервер можно приступать к настройке и установке PHP 7 на CentsOS 7. Язык программирования PHP применяется, в основном, в web-разработке и по отзывам и описанию повышает производительность сайта.

Большинство популярных систем управления уже поддерживают эту версию языка. Для начала подключаем неофициальный репозиторий IUS:

cd ~
curl 'https://setup.ius.io/' -o setup-ius.sh

После этот скрипт нужно выполнить командой:

bash setup-ius.sh

Установка PHP-FPM

Далее устанавливаем PHP 7 и модули php-fpm, php-mysqlnd:

yum install php70u-fpm-nginx php70u-cli php70u-mysqlnd -y

Добавим PHP-FPM в автозагрузку:

systemctl enable php-fpm

Настройка PHP 7 для работы с Nginx

После установки минимального набора php 7 можно приступить к непосредственной настройке связки PHP-FPM + Nginx. Чтобы получить лучшую производительность, желательно использовать Unix-сокет.

Итак, для начала откроем файл в редакторе и внесем в него изменения:
/etc/php-fpm.d/www.conf

В нем необходимо закомментировать строку, которая отвечает за работу на 9000 порту:

;listen = 127.0.0.1:9000

и раскомментировать:

listen = /run/php-fpm/www.sock
listen.acl_users = nginx

Далее необходимо изменить конфигурационные файлы NGINX, чтобы веб-сервер использовал сокет для взаимодействия с PHP-FRM:
/etc/nginx/conf.d/php-fpm.conf

Переключаем способ взаимодействия с TCP-порта 9000 на использование сокета, как показано ниже:

upstream php-fpm {
#server 127.0.0.1:9000;
server unix:/run/php-fpm/www.sock;
}

Настроем хост по умолчанию, чтобы в последствии убедиться, что у нас все работает. Путь к файлу: /etc/nginx/conf.d/default.conf

server {
listen 80 default_server;
root /usr/share/nginx/html;
index index.php index.html;
server_name _;
location / {
try_files $uri $uri/ /index.php?q=$uri&$args;
}
location ~ \.php$ {
try_files $uri =404;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass unix:/run/php-fpm/www.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}}

Для проверки работы PHP, нужно ввести команду:

php -v

Если все корректно, то вы должны увидеть:

Также в корневой папке сайта создадим php-файл с выводом информации о PHP, через функцию:

phpinfo();

Если открывать php файл тегом <?, то нужно не забыть в настройках php7.ini включить short_open_tag.

Дополнительные команды PHP-FPM

Статус сервера:

systemctl status php-fpm

Перезагрузка PHP-FPM:

systemctl restart php-fpm