首页 >后端开发 >php教程 >nginx rewrite rule

nginx rewrite rule

WBOY
WBOY原创
2016-06-23 13:45:221487浏览

实现下面的rewrite:
abc.domian.com/sort/2 => abc.domian.com/index.php?act=sort&name=abc&id=2

nginx.conf里面这么写是正确的吧:
rewrite ^/(.+)\/(\d+)\/?$ /index.php?act=$1&id=$2 last;


回复讨论(解决方案)

基本可以确定你用的CI框架

if (\$request_uri !~ ^/(html|static|favicon/.ico|robots/.txt|index/.php.*) ) {                        rewrite ^/(.*)\$ /index.php/\$1 last;                        break;                }

上面那个是错误的
这个的意思是如果访问  html  static等这些静态目录时直接返回,如果不是才需要路由到index.php

if ($request_uri !~ ^/(html|static|favicon/.ico|robots/.txt|index/.php.*) ) {                        rewrite ^/(.*)$ /index.php/$1 last;                        break;                }

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn