我的.htaccess规则如下:
RewriteCond %{REQUEST_URI} ^/services/service1/?$
RewriteRule . http://www.domain.com/Service1%20Services.html [R=301,L]
但%2
被剥离,最终结果为http://www.domain.com/Service10Services.html
我搜索过并发现%2就像%1一样是 RewriteCond Backreference 。
我的问题是我不知道如何逃避它,以便将其视为字符串文字。有人可以告诉我,我该怎么做?
答案 0 :(得分:1)
%2
是一个特殊的反向引用变量,您需要转义才能按字面意思使用它。您还需要NE
标记用于非编码。
使用此规则:
RewriteRule ^services/service1/?$ http://www.domain.com/Service1\%20Services.html [R=301,L,NE]