Nginx/fcgiwrap — различия между версиями

Материал из ALT Linux Wiki
Перейти к: навигация, поиск
Строка 1: Строка 1:
Настройка nginx для запуска CGI скриптов на примере collectd.
+
=== Настройка nginx для запуска CGI скриптов на примере collectd ===
  
 
Требуется поставить пакеты:
 
Требуется поставить пакеты:
nginx
+
nginx
fcgiwrap
+
fcgiwrap
spawn-fcgi
+
spawn-fcgi
 +
collectd-cgi
  
 +
== конфигурационные файлы ==
 
/etc/sysconfig/spawn-fcgi:
 
/etc/sysconfig/spawn-fcgi:
 
  ## ABSOLUTE path to the spawn-fcgi binary
 
  ## ABSOLUTE path to the spawn-fcgi binary
Строка 33: Строка 35:
 
  GROUPID=_spawn_fcgi
 
  GROUPID=_spawn_fcgi
  
 +
/etc/nginx/sites-enabled.d/collectd.conf:
 +
server {
 +
        listen  80;
 +
        access_log  /var/log/nginx/access.log;
 +
 +
        location / {
 +
                root  /var/www/html/collection3/bin;
 +
                autoindex on;
 +
                index  index.cgi;
 +
                auth_basic "Admin Zone";
 +
                auth_basic_user_file /var/www/html/collection3/etc/.htpasswd;
 +
                       
 +
        }
 +
       
 +
        location /share {
 +
                alias /var/www/html/collection3/share/;
 +
        }
 +
 +
        location ~ \.cgi$ {
 +
                root    /var/www/html/collection3/bin;
 +
                rewrite ^/cgi-bin/(.*)\.cgi /$1.cgi break;
 +
 +
                include /etc/nginx/fastcgi_params;
 +
 +
                fastcgi_pass  unix:/var/run/spawn-fcgi/spw-cgi.sock;
 +
                fastcgi_param  SCRIPT_FILENAME  /var/www/html/collection3/bin/$fastcgi_script_name;
 +
        }
 +
 +
        location ~ /\.ht {
 +
                deny all;
 +
        }
 +
 +
}
  
  
 
[[Категория:Web]]
 
[[Категория:Web]]

Версия 12:28, 19 октября 2010

Настройка nginx для запуска CGI скриптов на примере collectd

Требуется поставить пакеты:

nginx
fcgiwrap
spawn-fcgi
collectd-cgi

конфигурационные файлы

/etc/sysconfig/spawn-fcgi:

## ABSOLUTE path to the spawn-fcgi binary
SPAWNFCGI="/usr/bin/spawn-fcgi"

## ABSOLUTE path to the PHP binary
FCGIPROGRAM="/usr/local/bin/fcgiwrap"

## ip to listen
## *must* be commented out for use with unix domain socket
#FCGILISTEN="127.0.0.1"

## bind to tcp-port on localhost
## *must* be commented out for use with unix domain socket
#FCGIPORT="1027"

## unix domain socket permissions
#SOCKETUSER=
SOCKETGROUP=_nginx
SOCKETMODE=0770

# allowed environment variables sperated by spaces
ALLOWED_ENV="PATH"

## if this script is run as root switch to the following user
USERID=_spawn_fcgi
GROUPID=_spawn_fcgi

/etc/nginx/sites-enabled.d/collectd.conf:

server {
       listen   80;
       access_log  /var/log/nginx/access.log;

       location / {
               root   /var/www/html/collection3/bin;
               autoindex on;
               index  index.cgi;
               auth_basic "Admin Zone";
               auth_basic_user_file /var/www/html/collection3/etc/.htpasswd;
                       
       }
        
       location /share {
               alias /var/www/html/collection3/share/;
       }

       location ~ \.cgi$ {
               root    /var/www/html/collection3/bin;
               rewrite ^/cgi-bin/(.*)\.cgi /$1.cgi break;

               include /etc/nginx/fastcgi_params;

               fastcgi_pass   unix:/var/run/spawn-fcgi/spw-cgi.sock;
               fastcgi_param  SCRIPT_FILENAME  /var/www/html/collection3/bin/$fastcgi_script_name;
       }

       location ~ /\.ht {
               deny all;
       }

}