Болтаем последнюю стабильную версию nginx с официального сайта http://nginx.org/ru/download.html
wget http://nginx.org/download/nginx-1.2.6.tar.gz
tar xzf nginx-1.2.6.tar.gz
cd nginx-1.2.6
Настраиваем со следующими опциями, опции можете изменить на свое усмотрение, и устанавливаем:
./configure --prefix=/usr/local/nginx --conf-path=/usr/local/nginx/etc/nginx.conf --http-log-path=/var/log/nginx/access.log --pid-path=/var/run/nginx/nginx.pid --user=apache --group=apache --without-mail_pop3_module --without-mail_imap_module --without-mail_smtp_module --with-http_stub_status_module
make
make install
Содержание статьи
Дополняем сервис nginx.
wget -O /etc/init.d/nginx http://unixblog.in.ua/files/nginx/nginx
Верховодим конфигурационный файл nginx-а, указываем что бы он слушал 85-й порт. Или можете скачать готовый конфиг.
wget http://unixblog.in.ua/files/nginx/nginx.conf
Включаем файл, в котором будут хранится записи о пользователях, предварительно создав его.
touch /usr/local/nginx/etc/virtual.conf
Что бы уважительно отображались картинки в phpMyAdmin, создадим симлинк:
ln -s /var/www/html/phpMyAdmin /var/www/html/phpmyadmin
Все наладка nginx-а закончена.
Установка плагина
Скачиваем, распаковываем и заходим в папку установки:
wget http://unixblog.in.ua/files/nginx/nginx_plugin.tar.gz
tar -xzvf nginx_plugin.tar.gz
cd nginx_plugin
./install
Все, аппарат завершена, выполняем создание конфигурационных файлов для ранее созданных пользователей
/usr/local/directadmin/scripts/nginx_direct.sh all
/etc/init.d/nginx start
Бросим nginx (если он запустился самостоятельно, делаем restart).
service nginx restart
Сейчас нужно добавить nginx в автозагрузку и прописать правила iptables, для проброса портов:
chkconfig --add nginx
iptables -t nat -A PREROUTING -d xxx.xxx.xxx.xxx -p tcp -m tcp --dport 80 -j DNAT --to-destination xxx.xxx.xxx.xxx:85
iptables-save > /etc/sysconfig/iptables
Аппарат связки завершена.
Еще нужно будет прикрутить mod_rpaf к apache, для этого можно пользоваться инструкцией Установка mod_rpaf.
Немного о плагине.
Шаблоны конфигурационных файлов nginx, искается в папке /usr/local/directadmin/data/templates/custom.
Так же есть возможно создавать раздельный конфиг файлы nginx-а для определённого домена. Для этого нужно создать файл (именованная область данных на носителе информации): /usr/local/directadmin/data/users/USERNAME/domains/DOMAIN_NAME.custom_nginx, в нем досоздать виртуальный хост с нужными настройками и переписать конфигурационный файл для пользователя:
/usr/local/directadmin/scripts/nginx_direct.sh -u username
Что бы скопировать конфигурационные файлы для всех пользователей, нужно запустить скрипт с параметром “all”
/usr/local/directadmin/scripts/nginx_direct.sh all
Когда nginx при рестарте выдает массово [warn]: conflicting server name, значит непонятно какой из доменов в конфиге встречается несколько раз.
Решение проблемы:
1) Чистим все настройка от данного домена(/usr/local/directadmin/data/users/USERNAME/nginx.conf /usr/local/nginx/etc/virtual.conf)
2) Многочисленно пересоздаем конфигурационные файлы
find /usr/local/directadmin/data/users/*/ -name nginx.conf -print | tar czf /root/nginxusersconf.tar.gz -T -
find /usr/local/directadmin/data/users/*/ -name nginx.conf -delete
rm -f /usr/local/nginx/etc/virtual.conf
touch /usr/local/nginx/etc/virtual.conf
/usr/local/directadmin/scripts/nginx_direct.sh all

