我有一个重写规则,它用连字符替换下划线:
RewriteRule ^([^_]*)_([^_]*_.*) $1-$2 [N]
RewriteRule ^([^_]*)_([^_]*)$ /$1-$2 [L,R=301]
这个规则很好,因为它将递归检查,从而将/word1_word2/
转换为/word1-word2/
。
但也可以将/word1_word2_word3_word4/
转换为/word1-word2-word3-word4/
。
-(连字符)如何修改它以替换+符号?
所以/word1+word2/
变成了/word1-word2/
和
/word1+word2+word3+word4/
变成/word1-word2-word3-word4/
我已经尝试了十几种变体,但似乎无法让它起作用。
发布于 2011-07-09 09:17:38
只要在有下划线的地方添加字符:
RewriteRule ^([^_+]*)[_+]([^_+]*[_+].*) $1-$2 [N]
RewriteRule ^([^_+]*)[_+]([^_+]*)$ /$1-$2 [L,R=301]
https://stackoverflow.com/questions/6633863
复制相似问题