Отв: Nginx+FastCGI+fcgiwrap обработчик perl работоспособен?

Oleg Ruso soy_siberiano at yahoo.com
Thu Dec 25 16:27:04 UTC 2014


Да Дмитрий, конструкция проще, с этого и начинал. Скобки используются в расчёте гарантировать попадание имени файла в переменную.  
На обработку cgi (Perl) скрипта передаётся урл вида:/cgi-bin/clwarn.cgi?url=http://sams.perm.ru/tmp/!!!_virus_!!!/Joke.cpl&source=192.168.0.4&user=-&virus=stream: Worm.Bagle.AU FOUND.

Скрипт должен возвратить страницу с предупреждением, вместо загрузки инфект. страницы или файла.
И ещё. Если вырубить fcgiwrap,  сделать запрос http://ip/cgi-bin/index.cgi файл будет просто сохранён на диск. Следовательно, nginx обрабатывает запрос верно. Видимо, проблема в обработчике Perl - fcgiwrap. Но конфига нет, опции запуска:
fcgiwrap_enable="YES"fcgiwrap_socket="unix:/tmp/fcgiwrap.sock"fcgiwrap_user="www"

результат запуска выше. Отсюда и возник "?" работоспособности обработчика.

Может быть есть какие-то соображения по теме..... Вместо сокета можно испоьзовать сетевой стек..... но не хотелось бы. 







 

     четверг, 25 декабря 2014 2:29 Дима Редмайн <redmine24 at gmail.com> писал(а):
   

 Немного офтопа:

location ~ ^/(.*\.cgi)$ -- зачем используется такая конструкция? 
проще же: location ~ \.cgi$

данные в скобках могут попасть в $fastcgi_script_name или там в любом случае полное название файла? 



2014-12-24 17:59 GMT+02:00 Oleg Ruso <soy_siberiano at yahoo.com>:

Доброго времени.
Пытаюсь заставить nginx обрабатывать cgi скрипты на perl.PHP FPM/FastCGI  страницы возвращает, а вот c перлом проблема.

Ошибка 404, страница не найдена.
Параметры вопроса:Система  FreeBSD 10.1-RC4.
nginx/1.7.7 опции сборки порта:-----------------------------------------------------------     DEBUG=on: Build with debugging support     HTTP=on: Enable HTTP module     HTTP_CACHE=on: Enable http_cache module     HTTP_PERL=on: Enable http_perl module !!!     HTTP_REWRITE=on: Enable http_rewrite module     HTTP_SSL=on: Enable http_ssl module     HTTP_STATUS=on: Enable http_stub_status module     MAIL_POP3=on: Enable POP3 proxy module     MAIL_SMTP=on: Enable SMTP proxy module     MAIL_SSL=on: Enable mail_ssl module     WWW=on: Enable html sample files ----------------------------------------------------------fcgiwrap-1.1.0_2
----------------------------------------------------------Процессы:
#ps -aux | grep www | grep -v grepwww    708   0.0  0.7 100708  7060  -  I     3:34AM   0:00.08 php-fpm: pool www (php-fpm)www    709   0.0  0.7 100708  7340  -  I     3:34AM   0:00.12 php-fpm: pool www (php-fpm)www    982   0.0  0.2  14460  1932  -  Is    4:21AM   0:00.00 daemon: /usr/local/sbin/fcgiwrap[983] (daemon)www    983   0.0  0.2  14444  1904  -  I     4:21AM   0:00.00 /usr/local/sbin/fcgiwrap -s unix:/tmp/fcgiwrap.sockwww   1007   0.0  1.2  49388 11976  -  S     4:24AM   0:00.05 nginx: worker process (nginx)www   1008   0.0  1.1  49388 11740  -  I     4:24AM   0:00.04 nginx: worker process (nginx)
#sockstat | grep wwwwww      nginx      1008  6  tcp4   *:80                  *:*www      nginx      1008  8  stream -> ??www      nginx      1008  11 stream -> ??www      nginx      1007  5  stream -> ??www      nginx      1007  6  tcp4   *:80                  *:*www      nginx      1007  9  stream -> ??www      fcgiwrap   983   0  stream /tmp/fcgiwrap.sockwww      php-fpm    709   0  stream /tmp/php5-fpm.sockwww      php-fpm    708   0  stream /tmp/php5-fpm.sock---------------------------------------------------Пермиссии сокетов
srw-rw----  1 www  www     0B Dec 24 03:34 /tmp/php5-fpm.socksrw-rw----  1 root  www     0B Dec 22 10:32 /tmp/fcgiwrap.sock-------------------------------------------------nginx.conf  локэйшн для perl:
............ location ~ ^/(.*\.cgi)${try_files $uri =404;gzip off;fastcgi_param DOCUMENT_ROOT /www/www/cgi-bin;fastcgi_pass unix:/tmp/fcgiwrap.sock;fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;fastcgi_param SCRIPT_NAME $document_root$fastcgi_script_name;fastcgi_index index.cgi;include /usr/local/etc/nginx/fastcgi_params;}-------------------------------------------/www/www/cgi-bin-rw-r--r--  1 root  www   694B Dec 19 23:32 test.html-rwxrwx---  1 root  www   282B Dec 22 10:19 index.cgi------------------------------------------Страница test.html возвращается,  index.cgi ошибка 404
В логе по этому поводу ничего. Специально на tail -f ждал ошибок.... ничего. Просто смотрелка возвращает 404.
Прошу помощи сообщества. Может кто-нибудь занимался и получил результат. Сам в тупике. Спасибо всем!


 


_______________________________________________
nginx-ru mailing list
nginx-ru at nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru



_______________________________________________
nginx-ru mailing list
nginx-ru at nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

   
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.nginx.org/pipermail/nginx-ru/attachments/20141225/fa5bb059/attachment-0001.html>


Подробная информация о списке рассылки nginx-ru