关于奇矩互动奇矩互动招贤纳士奇矩互动优质虚拟主机Discuz!商业用户享有本站VIP服务LAMP环境配置手册(CentOS5.1)
发新话题
打印

Nginx的Rewrite配置

Nginx的Rewrite配置

Nginx的Rewrite
经过网上查阅和测试,发现Nginx的Rewrite规则和Apache的Rewite规则差别不是很大,几乎可以直接使用。比如在Apache中这样写规则
rewrite ^/([0-9]{5}).html$ /viewthread.php?tid=$1 last;
而在Nginx中写成这样写是无法启动的,解决的办法是加上两个双引号:
rewrite “^/([0-9]{5}).html$” /viewthread.php?tid=$1 last;
同时将RewriteRule为Rewrite,基本就实现了Nginx的Rewrite规则到Apache的Rewite规则的转换。

Rewrite的Flags
last - 基本上都用这个Flag。
break - 中止Rewirte,不在继续匹配
redirect - 返回临时重定向的HTTP状态302
permanent - 返回永久重定向的HTTP状态301

官方文档请点击这里,另外如果对于302,301这些状态有疑问的,可以参考《301 Redirect 永久重定向的实现》:http://www.ccvita.com/85.html
如果需要对Nginx配置防盗链的话,可以参考《Nginx的防盗链配置》:http://www.ccvita.com/312.html

Discuz在Nginx下的Rewrite
rewrite ^/archiver/((fid|tid)-[\w\-]+\.html)$ /archiver/index.php?$1 last;
rewrite ^/forum-([0-9]+)-([0-9]+)\.html$ /forumdisplay.php?fid=$1&page=$2 last;
rewrite ^/thread-([0-9]+)-([0-9]+)-([0-9]+)\.html$ /viewthread.php?tid=$1&extra=page\%3D$3&page=$2 last;
rewrite ^/space-(username|uid)-(.+)\.html$ /space.php?$1=$2 last;
rewrite ^/tag-(.+)\.html$ /tag.php?name=$1 last;
break;

SupeSite在Nginx下的Rewrite
rewrite ^([0-9]+)/spacelist(.*)$ index.php?$1/action_spacelist$2;
rewrite ^([0-9]+)/viewspace_(.+)$ index.php?$1/action_viewspace_itemid_$2;
rewrite ^([0-9]+)/viewbbs_(.+)$ index.php?$1/action_viewbbs_tid_$2;
rewrite ^([0-9]+)/(.*)$ index.php?$1/$2;
rewrite ^([0-9]+)$ index.php?$1;
rewrite ^action_(.+)$ index.php?action_$1;
rewrite ^category_(.+)$ index.php?action_category_catid_$1;
rewrite ^itemlist_(.+)$ index.php?action_itemlist_catid_$1;
rewrite ^viewnews_(.+)$ index.php?action_viewnews_itemid_$1;
rewrite ^viewthread_(.+)$ index.php?action_viewthread_tid_$1;
rewrite ^index([\.a-zA-Z0-9]*)$ index.php;
rewrite ^html/([0-9]+)/viewnews_itemid_([0-9]+)\.html$ index.php?action_viewnews_itemid_$2;
rewrite ^/([0-9]+)/spacelist(.+)$ /index.php?uid/$1/action/spacelist/type$2;
rewrite ^/([0-9]+)/viewspace(.+)$ /index.php?uid/$1/action/viewspace/itemid$2;
rewrite ^/([0-9]+)/viewbbs(.+)$ /index.php?uid/$1/action/viewbbs/tid$2;
rewrite ^/([0-9]+)/(.*)$ /index.php?uid/$1/$2;
rewrite ^/([0-9]+)$ /index.php?uid/$1;

rewrite ^/action(.+)$ /index.php?action$1;
rewrite ^/category(.+)$ /index.php?action/category/catid$1;
rewrite ^/viewnews(.+)$ /index.php?action/viewnews/itemid$1;
rewrite ^/viewthread(.+)$ /index.php?action/viewthread/tid$1;
rewrite ^/mygroup(.+)$ /index.php?action/mygroup/gid$1;
rewrite ^/bbs/(.*) http://bbs.yaoyedan.com/$1;
真正的尊敬,既不属于那些批评别人头头是道的人,也不是属于给强人指出过错、指点别人哪里做的不好的人。真正的尊敬,是属于那些勇于亲身投入战场,脸上沾满了尘土、汗水和鲜血的奋斗者们。他们坚持不懈的努力,尽管曾经犯下错误,并一再失败,但他们满怀激情,执著不懈,将生命奉献于崇高的事业。他们为经过艰辛努力最终取得的伟大成就而自豪,如果失败,他们也败得荣耀。因此,那些既没赢得过胜利,也没懂得什么叫做失败的,冷漠、胆怯的灵魂,是永远也无法与这些真正值得尊敬的人相提并论的。
http://www.cnedwin.com

TOP

发新话题