基础服务

nginx rewrite遇到的简单问题

2016-11-23  本文已影响204人  zhou

引子:

http://www.test.com/?top 重定向到 http://www.testtop.com/

遇到的问题:

立即想到的解决办法就是nginx配置文件中增加下面的配置:

rewrite  ^/\?top$  http://www.testtop.com/  redirect; 

但重启nginx后,访问http://www.test.com/?top没有重定向到新页面。
那么nginx配置肯定出问题了,google后得到下面几个知识点。

知识点

rewrite的语法先列下:
rewrite regex replacement [flag]

解决方法

在nginx配置文件中添加下面的配置:

if ( $request_uri  ~  "/\?top$" ) {
      rewrite ^(.*)$  http://www.testtop.com/? redirect;
}

rewrite的flag参数

全局参数

另一个重定向

http://www.test.com/article?tid=12345重定向到http://www.test.com/article/123456
可以使用如下配置:

rewrite  ^/article$  /article/$arg_tid? ;
上一篇 下一篇

猜你喜欢

热点阅读