This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revisionLast revisionBoth sides next revision | ||
software:perl:fastcgi [2015/05/20 18:40] – root | software:perl:fastcgi [2022/02/05 03:59] – root | ||
---|---|---|---|
Line 1: | Line 1: | ||
+ | {{tag> | ||
+ | |||
====== Perl fastcgi daemon ====== | ====== Perl fastcgi daemon ====== | ||
+ | Nginx, в отличии от lighttpd не умеет сам выполнять perl скрипты, | ||
+ | |||
+ | ---- | ||
+ | |||
+ | <note important> | ||
+ | Так же хорошо работает uWSGI, инструкции по настройке: | ||
+ | |||
+ | ---- | ||
+ | |||
+ | Демон не моя разработка, | ||
+ | Работа chroot не проверялась, | ||
+ | Часть не реализованных в демоне опций выполняется стартовым скриптом (chroot, смена пользователя и группы), | ||
- | **Стартовый скрипт**: | + | **Стартовый скрипт**: |
**Демон**: | **Демон**: | ||
- | **Лицензия**: | + | **Лицензия**: |
+ | **Более продвинутый вариант**: | ||
+ | **Обсуждение на форуме**: | ||
- | Поставил nginx вместо lighttpd и долго мучался с подключением perl. | ||
- | Не нашёл ничего чтобы работало демоном для перла по fast-cgi. | ||
- | Зато было две модификации перлового скрипта, | ||
- | Пришлось самому его дописывать и делать обёртку стартового скрипта. | ||
- | chroot не тестировал, | ||
- | Пример настроек | + | ===== Пример настроек |
+ | В rc.conf для FreeBSD | ||
< | < | ||
perl_fcgi_pidfile="/ | perl_fcgi_pidfile="/ | ||
Line 28: | Line 40: | ||
perl_fcgi_max_requests=" | perl_fcgi_max_requests=" | ||
perl_fcgi_path_env="/ | perl_fcgi_path_env="/ | ||
+ | * **enable** - разрешить запуск при загрузке | ||
+ | * **user** - имя пользователя под которым выполнять демона и скрипты | ||
+ | * **group** - группа под которыми выполнять демона и скрипты | ||
+ | * **chdir** - текущая директория для демона | ||
+ | * **chroot** - корневая директория для демона | ||
+ | * **socket** - unix сокет - путь или ip:port - для работы fcgi | ||
+ | * **socketbacklog** - размер очереди входящих соединений, | ||
+ | * **socketmode** - права доступа к сокету, | ||
+ | * **children** - количество дочерних процессов для выполнения скриптов | ||
+ | * **childrentimeout** - максимальное время выполнения скрипта | ||
+ | * **max_requests** - максимальное количество запросов обработанных одним дочерним процессом | ||
+ | * **path_env** - перезаписать переменную окружения PATH | ||
+ | |||
+ | ===== Параметры командной строки демона ===== | ||
+ | * **-d** < | ||
+ | * **-s** < | ||
+ | * **-sb** < | ||
+ | * **-M** < | ||
+ | * **-F** < | ||
+ | * **-Ft** < | ||
+ | * **-Fm** <num> - children process max requests (default 100) | ||
+ | * **-P** < | ||
+ | * **-e** < | ||
- | Постарался проследить историю развития скрипта, | ||
- | Версию с более продвинутой логикой внутри мне не удалось заставить работать, | ||
- | В коде видно часть не реализованных опций - часть из них реализуется стартовым скриптом (chroot, смена пользователя и группы), |