存档

文章标签 ‘重写’

nginx重写规则中被重写网址中携带参数如何正确301重定向至新网址中

2020年8月21日 没有评论

比如需要重写的网址是:/news/view.php?itemid=123

我们现在希望自动301到新的网址,并把参数携带过去,我们希望重写后的网址格式是:/news/123.html

那么301重写规则就是:rewrite ^/news/view.php$ /news/$arg_itemid.html? permanent;

解释:$arg_原本参数名称就是获取原本的itemid=123,所以$arg_itemid就是等于123,“$arg_itemid.html?”最后面的问号,就是终止继续携带参数的功能(nginx会自动再携带一遍)如果不加问号,那么301之后就变成了:/news/123.html?itemid=123

nginx重写规则中被重写网址中携带参数如何正确301重定向至新网址中,解决方案暂且记录到这里。

在nginx环境下的path_info重写问题

2015年8月25日 没有评论

我们需要将/c/目录下的所有文件都重写到index.php,让index.php来处理

当然会传递path_info,比如:

/c/123.html,实际访问的是:index.php

index.php中使用pathinfo($_SERVER[‘PHP_SELF’])进行操作

按照一般的重写是:

rewrite ^/c/(.*)$ /c/index.php/$1 last;

实际上应该用:(建议在nginx配置文件中的location ~ \.php$ {}中加入)

if (!-e $request_filename){
    rewrite ^/c/(.*)$ /c/index.php?/$1 last;
}

分类: nginx技巧 标签: ,
css.php