【问题标题】:nginx rewrite rule explanationnginx重写规则解释
【发布时间】:2012-09-17 20:46:07
【问题描述】:

从一个例子开始。

输入 URI:

http://website.com/search/some-search-keywords

重写的 URI:

http://website.com/search.php?q=some-search-keywords

重写规则:

rewrite ^/search/(.*)$ /search.php?q=$1?

“?”是什么意思?在“重写规则”中?我不明白 谁能给我一个解释或参考?非常感谢!

【问题讨论】:

  • 哪个“?”?查询字符串前后各有一个。后者可能应该被删除。
  • 哦,对不起,我的意思是所有“?”在“重写规则:”中,“/search.php”后面的第一个和最后一个,也是
  • 哦,对不起,我的意思是所有“?”在“重写规则:”中,“/search.php”后面的第一个和最后一个,也在“重写^search/(.*)$ /search.php?q=$1?”的末尾应该是一个“;”像这样“rewrite ^/search/(.*)$ /search.php?q=$1?;”,这个例子是“nginx http server”一书的摘录,是nginx.org/en/books.html,sothe laste推荐的“ ?”可能不应该被删除。

标签: nginx rewrite


【解决方案1】:

http://nginx.org/r/rewrite

如果替换字符串包含新的请求参数,则之前的请求参数会附加在它们之后。如果这是不希望的,在替换字符串的末尾放置一个问号可以避免附加它们

阅读官方文档总是一个好主意。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-10-19
    • 1970-01-01
    • 2010-11-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-03-04
    相关资源
    最近更新 更多