简体   繁体   English

Nginx重写URL删除子文件夹

[英]nginx rewrite url removing subfolder

I am struggling a bit with rewriting some urls in nginx 我在用nginx重写一些URL时有点挣扎

I have a site: foo.com/ 我有一个网站:foo.com/

foo.com/index.html has a link to foo.com/bar.cgi (maybe with with GET arguements) foo.com/index.html包含一个指向foo.com/bar.cgi的链接(可能与GET争论一起使用)

my cgi resides in /var/www/site/cgi-bin/ and thus it is accesible via foo.com/cgi-bin/bar.cgi 我的CGI位于/ var / www / site / cgi-bin /中,因此可以通过foo.com/cgi-bin/bar.cgi访问

I was hoping the rewrite would remove the cgi-bin part 我希望重写将删除cgi-bin部分

    location ~ \.cgi$ {
        root /var/www/localhost;
        #rewrite ^/cgi-bin/(.*)$ $1 permanent;

        fastcgi_param SCRIPT_FILENAME/ /var/www/localhost$fastcgi_script_name;
        include /etc/nginx/fastcgi.conf;
        fastcgi_pass unix:/var/run/fcgi.sock-1;
        }

根据您的描述,您只需要将fastcgi指向正确的位置:

fastcgi_param SCRIPT_FILENAME var/www/site/cgi-bin$fastcgi_script_name;

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM