Nginx с php на CentOS
Установим и настроем Nginx с PHP на примере CentOS 5.4. Все делается довольно быстро и просто.
Первым делом ставим репозитарий epel:
# rpm -Uvh http://download.fedora.redhat.com/pub/epel/5/$(uname -m)/epel-release-5-3.noarch.rpm
Устанавливаем nginx:
# yum install nginx
Ставим PHP и необходимые модули:
# yum install php-pear-Net-Socket php-pear php-common php-gd php-devel php php-mbstring php-pear-Mail php-cli php-imap php-snmp php-pdo php-xml php-pear-Auth-SASL php-ldap php-pear-Net-SMTP php-mysql
Ставим spawn-fcgi:
# yum install spawn-fcgi
Скачиваем и настраиваем скрипт для init.d:
# wget http://andrey.org/nginx-daemon.sh.gz
# gunzip nginx-daemon.sh.gz
# mv nginx-daemon.sh /etc/init.d/php_cgi
# chmod +x /etc/init.d/php_cgi
Запускаем php app :
# /etc/init.d/php_cgi start
Проверяем:
# netstat -tulpn | grep :9000
Получаем:
tcp 0 0 127.0.0.1:9000 0.0.0.0:* LISTEN 15196/php-cgi
Вносим изменения в /etc/nginx/nginx.conf :
location ~ \.php$ {
root html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /usr/share/nginx/html$fastcgi_script_name;
include fastcgi_params;
}
Рестартуем Nginx:
# service nginx restart
Создаем тестовый файл для проверки работы php — /usr/share/nginx/html/info.php:
<?php
phpinfo();
?>
Проверяем в браузере. Все должно работать.
Удачи в настройках.
© shadow_alone
Спасибо. Все работает прекрасно на CentOS 5.6. Избавился я от apache и перевел сайт на менее обжорлиывый демон nginx.