当前位置: > Linux服务器 > nginx >

Linux服务器Nginx rewrite示例

时间:2016-01-03 01:23来源:linux.it.net.cn 作者:IT

适用场景:部分 Linux服务器,由于站点业务特殊需求,需要进行重定向设置,可以参考以下方法:

1. 在站点根目录下创建.htaccess文件,然后vim 编辑此文件。

2. 添加规则代码,以下为Discuz伪静态规则示例:

# nginx rewrite rule
rewrite ^(.*)/archiver/((fid|tid)-[w-]+.html)$ $1/archiver/index.php?$2 last;
rewrite ^(.*)/forum-([0-9]+)-([0-9]+).html$ $1/forumdisplay.php?fid=$2&page=$3 last;
rewrite ^(.*)/thread-([0-9]+)-([0-9]+)-([0-9]+).html$ $1/viewthread.php?tid=$2&extra=page%3D$4&page=$3 last;
rewrite ^(.*)/profile-(username|uid)-(.+).html$ $1/viewpro.php?$2=$3 last;
rewrite ^(.*)/space-(username|uid)-(.+).html$ $1/space.php?$2=$3 last;
rewrite ^(.*)/tag-(.+).html$ $1/tag.php?name=$2 last;
# end nginx rewrite rule

wq保存退出。

3. 修改nginx配置文件:

vim /etc/nginx/nginx.conf

4. 在需要添加伪静态的虚拟主机的server{}中引入.htaccess文件,如图所示:

blob.png

include /var/www/站点名/.htaccess;(请根据实际站点路径修改.htaccess 位置)

wq保存退出。

5. 重新加载nginx配置文件:

/etc/init.d/nginx reload

6. 重新访问站点,如果伪静态正常证明rewrite rule语法正确生效。


 

(责任编辑:IT)
------分隔线----------------------------
栏目列表
推荐内容