Nginx + Perl. Как развернуть Twiki?
daozor
nginx-forum на nginx.us
Вт Янв 25 09:42:29 MSK 2011
Приветствую!
Работает Nginx + Spawn-fcgi-1.4.18 > fcgiwrap version 1.0
Задача развернуть на базе этого
сервера Twiki (twiki.org)
Проблема в следующем.
Твики основаны на перл-скриптах, при
этом файлы скриптов не имею
расширения.
При запросе скрипт не выполняется, а
вместо этого браузер предлагает
скачать файл.
Так выглядит список перл скриптов от
твики
[code]
/var/www/twiki/bin
drwxr-xr-x 3 root root 4096 Jan 24 13:15 .
drwxr-xr-x 10 root root 4096 Jan 24 12:09 ..
-r-xr-xr-x 1 root root 1380 Oct 11 10:15 attach
-r-xr-xr-x 1 root root 1381 Oct 11 10:15 changes
-r-xr-xr-x 1 root root 31210 Oct 11 10:15 configure
-r-xr-xr-x 1 root root 1378 Oct 11 10:15 edit
...
[/code]
А вот конфиг, при котором не происходит
выполнения этих скриптов:
[code]
server {
listen 80;
server_name twiki;
location / {
root /var/www/twiki/;
index index.html;
}
location /twiki/bin {
root /var/www/twiki/bin/;
include /etc/nginx/fastcgi_params;
fastcgi_pass 127.0.0.1:10001;
fastcgi_param SCRIPT_FILENAME
/var/www/twiki$fastcgi_script_name;
}
}
[/code]
Если же перлячные файлы имеют
расширение (pl/cgi), то на примере нагиоса
все работает замечательно, и вот
выдержка работающего конфига:
[code]
location ~ .cgi$ {
root /var/www/nagios/cgi-bin/;
rewrite ^/nagios/cgi-bin/(.*)\.cgi
/$1.cgi break;
include /etc/nginx/fastcgi_params;
fastcgi_pass 127.0.0.1:10001;
fastcgi_param SCRIPT_FILENAME
/var/www/nagios$fastcgi_script_name;
}
[/code]
Но как быть в случае, когда файлы без
расширения? Какой локейшн указывать,
реврайт? Как сделать чтобы файлы не
качались а выполнялись? Выручайте
советом. Бьюсь который день..
Спасибо!
Posted at Nginx Forum: http://forum.nginx.org/read.php?21,169326,169326#msg-169326
Подробная информация о списке рассылки nginx-ru