пятница, 2 апреля 2010 г.

nginx под win32 как сервис

Nginx - штука гордая. Особенно под windows. Запускать нужно через start, чтоб отдельный процесс запустился. Озадачился запускать nginx как сервис. Проще всего через утилитку cygrunsrv.exe.

Тут тоже свои шаманства:
cygrunsrv.exe --install nginx -p c:\nginx\nginx.exe --neverexits -a "-p c:\nginx"

Ключ --neverexits нужен, т.к. nginx "форкается" (порождает отдельный процесс).
Ключ -a нужен что бы передать путь, где находится сам nginx. Иначе не найдет куда писать логи.

А вот прикрутить ротацию логов пока не получилось, ругается, что не может найти какой-то файл (смутно думаю, что пид-файл)

reload_logs.bat:
cd c:\nginx\logs\
ren access.log access-%DATE%.log
ren error.log error-%DATE%.log
cd ..
nginx -s reopen

1 комментарий:

Unknown комментирует...

Есть несколько дополнений к версии nginx для Windows
в виде отдельных программ:

1. Комплект для установки как сервис.
2. Утилита для конвертации конфигов Апача для виртуальных хостов в
конфиги nginx.
3. Приложение в трей, которое позволяет видеть состояние сервера nginx
и управлять им.

Addons для nginx:
NG_SRVINST http://ng_srvinst.att.kiev.ua/
NG_SITE http://ng_site.att.kiev.ua/
NG_TRAY http://ng_tray.att.kiev.ua/