четверг, 24 января 2013 г.

Установка Nginx

Перейти к: навигация, поиск
Nginx - популярный веб-сервер (аналог апача), отличающейся высокой производительностью и гибкими настройками.
Установить nginx можно двумя способами:
  • установить rpm-пакет из репозитария - предпочтительный вариант
  • собрать вручную из исходников

Содержание

Установка Nginx из репозитория

На данный момент rpm-пакет nginx не включен в родной репозиторий CentOS, поэтому нужно подключить дополнительные репы, например: как подлючить CentALT репозиторий
[root@server ~]# yum install nginx-stable
или

[root@server ~]# yum install nginx
(отличия пакетов видно из названий)
добавляем nginx в автозагрузку:
[root@server ~]# /sbin/chkconfig --levels 235 nginx on
запускаем сервис(демон) Nginx:
[root@server ~]# /sbin/service nginx start
или
[root@server ~]# /etc/init.d/nginx start
если не получится стартануть с первого раза, можно попробовать ребутнуть сервер, иногда помогает.
Если веб-сервер nginx работает один, без нод, то лучше ему в случае связки nginx+fastcgi слушать unix сокет, вместо tcp-сокета

Установка и настройка PHP-FPM

[root@server ~]# yum install php-fpm
/sbin/chkconfig --levels 235 php-fpm on
в файле конфига php-fpm: /etc/php-fpm.d/www.conf (или какой-то другой файл) меняем опции следующим образом:
...
listen = /tmp/phpcgi.socket
....
user = nginx
group = nginx
после изменения прослушки tcp/ip сокета на unix-сокет, нужно тоже самое сделать в nginx, а именно проксировать трафик через:
fastcgi_pass unix:/tmp/phpcgi.socket;
через юникс-сокет работает чуть быстрее за счет удаления лишнего слоя абстракции. Для корректной работы php-сессий нужно сделать так:
mkdir /var/lib/php/session
chown root:nginx /var/lib/php/session
chmod 775 /var/lib/php/session

Конфиг nginx

чтобы не было 502 ошибки для долгих бэкендов (php-скриптов):
fastcgi_read_timeout 60m;

Ссылки

Комментариев нет:

Отправить комментарий