nginx重写url删除子文件夹 [英] nginx rewrite url removing subfolder
本文介绍了nginx重写url删除子文件夹的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我在 nginx 中重写一些 url 有点挣扎
I am struggling a bit with rewriting some urls in nginx
我有一个网站:foo.com/
I have a site: foo.com/
foo.com/index.html 有一个指向 foo.com/bar.cgi 的链接(可能带有 GET 争论)
foo.com/index.html has a link to foo.com/bar.cgi (maybe with with GET arguements)
我的 cgi 位于/var/www/site/cgi-bin/,因此可以通过 foo.com/cgi-bin/bar.cgi 访问
my cgi resides in /var/www/site/cgi-bin/ and thus it is accesible via foo.com/cgi-bin/bar.cgi
我希望重写会删除 cgi-bin 部分
I was hoping the rewrite would remove the cgi-bin part
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 指向正确的位置:
From what you describe you only have to point fastcgi to the right place:
fastcgi_param SCRIPT_FILENAME var/www/site/cgi-bin$fastcgi_script_name;
这篇关于nginx重写url删除子文件夹的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文