nginx 重写规则求助
- 0次
- 2021-05-26 15:34:36
- idczone
wordpress的一些tag原来为中文,当改为英文时,需要做一些重定向.
比如 原tag网址 为 abc.com/tag/中国 现在修改为 abc.com/tag/china
这样的规则该怎国外服务器么弄,试了半天都没有成功
这种只能在应用里面设置,nginx又不带翻译,除非你把所有的全部列出来
可以用map
map $tagold $tagnew {
default 404;
%E4%B8%AD%E5%9B%BD china;
%E7%BE%8E%E5%9B%BD usa;
………
}
server{
location ~/tag/(?.*){
return 301 /tag/$tagnew;
}
}
大约就这样,如果不行的话贴一下errorlog看看
map左边那一串是中文字符的转义,你可以直接搜索某个中文词,然后把地址栏里的url复制到记事本里查看
哇,谢谢
map功能好强大!~ 以前还是一条一条写rewrite...
没有特别需求的话其实建议少用rewrite模块,特别是if is evil。性能会比较好
其实用 ngx_lua 模块,一小段 Lua 代码就能解决
受教了~
ngx_lua也很牛。。。不知道和上面说的map相比,性能咋样。
无效,无限重定向,可否给一个联系方式?
一灵二溜四叁期午叁午