我设置了如下重写规则:
rewrite ^(www\.)*mysite\.com(/)*(index\.php)*$ /texts/mysite.com_page_24.html last;
它应该只捕获如下调用:
www.mysite.com
www.mysite.com/
mysite.com
mysite.com/
www.mysite.com/index.php
但它也可以捕获以下调用:
mysite.com/index.php?option=com_correct&task=view&id=5&Itemid=30
为什么我会出现这种奇怪的行为?和标志清楚地指示开始和结束^
。$
编辑:
在请求我不想捕获的内部链接时查看日志文件会给出:
"GET /mysite.com/index.php?option=com_correct&task=view&id=5&Itemid=30 HTTP/1.0" 200 118 "-" "-"
经过进一步调查,似乎 nginx 正在避免争论并且表现得好像它是同一个页面。如何将 nginx 设置为不避免参数并像它们是不同的页面一样行事?