Nginx rewrite

1, 标签列表页
原地址: search.php?keywords=音乐手机(即search.php?keywords=标签名)
重写后的地址:tag-音乐手机.html (即tag-标签名.html)
这个音乐手机是中文,是否可以用w来匹配呢?(我开始的想法也是用w来匹配,但实际上不可以,w表示英文字母、数字或下划线,所以这个标签名只能通过.来匹配),因此:
最后的重写规则为:

rewrite ^(.*)/tag-(.*).html  $1/search.php?keywords=$2
  • 第一个括号中(.*)代表/tag前的部分,可能是域名,也可能是域名+目录
  • 第二个括号中(.*)代表标签名
    注:$1和$2是反向引用,$1表示第一个括号匹配的内容,$2表示第二个括号匹配的内容

2,添加重写规则

location / {
    index  index.html index.htm index.php;
    #autoindex  on;
    if (!-e $request_filename) {
        rewrite ^/(.*)$ /index.php/$1;
    }
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。