我有一个glype代理,我想重写url。页面上的所有url都会自动转换为:http://proxy.com/browse.php?U=[此处为URL]。示例:如果我在代理服务器上转到/浏览海盗湾,我希望从以下位置转换URL:
proxy.com/tpb/browse.php?u=http%3A%2F%2Fthepiratebay.se%2Fbrowse&b=0
对此:
proxy.com/tpb/browse
如你所见,整个部分:
browse.php?u=http%3A%2F%2Fthepiratebay.se%2F
已经不见了(url后面的
&b=0
也不见了)。它的域名结构和海盗湾一样。我试过这样的方法:
location /tpb/ {
rewrite ^/browse.php?u=(.*)$ /$1? last;
break;
}
但它不起作用。有人有答案吗?另一个功能也是受欢迎的。(例如
fastcgi_split_path_info
或与nginx兼容的其他内容)(如果您想看一个示例,请转到tpb.piratenpartij.nl,但我不确定他们是否使用glype)
最佳答案
我认为proxy.com/tpb/browse.php?u=http%3A%2F%2Fthepiratebay.se%2Fbrowse&b=0
与location /tpb/browse.php
匹配,因此您可以编写
location /tpb/browse.php {
rewrite ^/tpb/browse\.php.* $host/tpb/browse redirect;
}
希望它做你想要的,它不在乎吗?你真的需要吗?
如果成功的话告诉我,我现在没有地方可以试试。