После устаноки Nginx на сервер можно приступать к настройке и установке PHP 7 на CentsOS 7. Язык программирования PHP применяется, в основном, в web-разработке и по отзывам и описанию повышает производительность сайта. Большинство популярных систем управления уже поддерживают эту версию языка. Для начала подключаем неофициальный репозиторий IUS:
cd ~
curl 'https://setup.ius.io/' -o setup-ius.sh
После этот скрипт нужно выполнить командой:
bash setup-ius.sh
Далее устанавливаем PHP 7 и модули php-fpm, php-mysqlnd:
yum install php70u-fpm-nginx php70u-cli php70u-mysqlnd -y
Добавим PHP-FPM в автозагрузку:
systemctl enable php-fpm
После установки минимального набора 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.
Статус сервера
systemctl status php-fpm
Перезагрузка PHP-FPM
systemctl restart php-fpm
В следующей части рассмотрим установку базы данных.