Nginx重新打造问号

时间:2017-07-16 16:41:10

标签: nginx url-rewriting special-characters

我使用Windows 7开发网站。现在我在重写网址时遇到了问题。尝试将问号更改为下划线,但似乎没有问题。

location /site/ {
        rewrite "^skript.php([?]{1})(.*)$" skript.php_$2;
}

网址应为“skript.php_ $ args。

需要解决方案。

1 个答案:

答案 0 :(得分:0)

?查询字符串的分隔符。 rewritelocation指令使用已经删除了查询字符串并放入$args的规范化URI。

有许多方法可以将_$args附加到URI,具体取决于您要实现的目标。例如:

location = /foo.php {
    rewrite ^ $uri_$args?;
}

或者:

location = /foo.php {
    return 301 $uri_$args;
}

或者:

rewrite ^/foo.php$ $uri_$args?;

有关详细信息,请参阅thisthis