Nginx 我的网站下载.sh页面,而不是显示它们

Nginx 我的网站下载.sh页面,而不是显示它们,nginx,Nginx,例如,当我单击此链接时:http://debian.local/cgi-bin/hobbitcolumn.sh?bbgen 它下载.sh文件而不是显示它 我试着把fastcgi\uuuparams放在location^~/hobbit中,但仍然不起作用 你能帮我吗 谢谢 以下是我的网站/debian.local.conf: # /etc/nginx/sites-available/debian.local.conf # HTTP server server { listen 80;

例如,当我单击此链接时:http://debian.local/cgi-bin/hobbitcolumn.sh?bbgen 它下载.sh文件而不是显示它

我试着把
fastcgi\uuu
params放在
location^~/hobbit
中,但仍然不起作用

你能帮我吗 谢谢

以下是我的网站/debian.local.conf:

# /etc/nginx/sites-available/debian.local.conf
# HTTP server
server {
    listen   80; ## listen for ipv4; this line is default and implied
    #listen   [::]:80 default_server ipv6only=on; ## listen for ipv6

    # Make site accessible from http://localhost/
    server_name debian.local localhost ;
    # On redirige toutes les requêtes vers HTTPS
    #rewrite ^ https://$server_name$request_uri? permanent;

location ^~ /glpi {
  root /home/cedric/web;
  index index.php;

        location ~ /glpi(/.*\.php) {
        include /etc/nginx/fastcgi_params;
        fastcgi_pass    unix:/var/run/php5-fpm.sock;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        fastcgi_index index.php;
        }
}

location ^~ /hobbit {
                alias /usr/lib/hobbit/server/www/ ;
                index index.html ;

        }
location /cgi-bin/ {
                alias /usr/lib/hobbit/cgi-bin/;


}

location /cgi-secure/ {

                alias /usr/lib/hobbit/cgi-secure/ ;
}

}
server {
    listen 443 ssl;
    server_name debian.local localhost ;

    root html;
    index index.html index.htm;

    # Use a self-signed certificate to ensure
    # secure connexion to phpmyadmin
    ssl_certificate debian.local.crt;
    ssl_certificate_key debian.local.key;

    ssl_session_timeout 5m;

    # Access only latest browsers
    ssl_protocols TLSv1.2;
    ssl_ciphers ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv3:+EXP;
    ssl_prefer_server_ciphers on;

    location / {
        try_files $uri $uri/ =404;
    }

location /zabbix {
        if ($scheme ~ ^http:){
            rewrite ^(.*)$  https://$host$1 permanent;
        }
        alias                   /usr/share/zabbix;
        index                   index.php;
        error_page              403 404 502 503 504  /zabbix/index.php;

        location ~ \.php$ {
                if (!-f $request_filename) { return 404; }
                expires                 epoch;
                include                 /etc/nginx/fastcgi_params;
                fastcgi_index   index.php;
                fastcgi_pass    unix:/var/run/php5-fpm.sock;
    }

        location ~ \.(jpg|jpeg|gif|png|ico)$ {
                access_log      off;
                expires         33d;
        }

}

 location /phpmyadmin {
           root /usr/share/;
           index index.php index.html index.htm;

           location ~ ^/phpmyadmin/(.+\.php)$ {
                try_files $uri =404;
                root /usr/share/;
                fastcgi_pass unix:/var/run/php5-fpm.sock;
                fastcgi_index index.php;
                fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
                include /etc/nginx/fastcgi_params;
           }
           location ~* ^/phpmyadmin/(.+\.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt))$ {
                   root /usr/share/;
           }
    }
    location /phpMyAdmin {
           rewrite ^/* /phpmyadmin last;
    }

    ## Xcache admin pages
    location /xcache {
        alias /usr/share/xcache/;
        try_files $uri $uri/ /index.php;

        location ~ ^/xcache/(.+\.php)$ {
            fastcgi_pass unix:/var/run/php5-fpm.sock;
            fastcgi_param SCRIPT_FILENAME $request_filename;
            include fastcgi_params;
        }
    }
}
这是显示的内容,而不是网页:

#!/bin/sh QS="${QUERY_STRING}" QUERY_STRING="db=columndoc.csv&key=${QS}" export QUERY_STRING . /usr/lib/hobbit/server/etc/hobbitcgi.cfg exec /usr/lib/hobbit/server/bin/bb-csvinfo.cgi $CGI_HOBBITCOLUMN_OPTS 
您应该在感兴趣的位置使用该指令,例如:

location /cgi-bin/ {
    alias /usr/lib/hobbit/cgi-bin/;
    default_type text/plain;
}
我成功了

这对我有帮助:
https://www.howtoforge.com/serving-cgi-scripts-with-nginx-on-debian-squeeze-ubuntu-11.04-p3

我输入了
Fcgiwrap
并编辑了我的
站点/debian.local.conf
,如下所示:

location /cgi-bin/ {
     # Disable gzip (it makes scripts feel slower since they have to complete
     # before getting gzipped)
     gzip off;
     # Set the root to /usr/lib (inside this location this means that we are
     # giving access to the files under /usr/lib/cgi-bin)
     alias  /usr/lib/hobbit/cgi-bin/;
     # Fastcgi socket
     fastcgi_pass  unix:/var/run/fcgiwrap.socket;
     # Fastcgi parameters, include the standard ones
     include /etc/nginx/fastcgi_params;
     # Adjust non standard parameters (SCRIPT_FILENAME)
     fastcgi_param SCRIPT_FILENAME  $document_root$fastcgi_script_name;
   }

谢谢。

你好,谢谢你的回答。仍然不起作用,但更好。它显示文件的内容,或者它仍然下载它,取决于我启动的链接你所说的“取决于我启动的链接”是什么意思?如果要从不同路径访问文件,可能需要将指令添加到更多位置。例如:
http://debian.local/cgi-bin/bb-hostsvc.sh?HOST=debian&SERVICE=bbd
下载文件并
http://debian.local/cgi-bin/hobbitcolumn.sh?bbd
显示
hobbitcolumn.sh的内容