Regex 如何在htaccess中替换URL中的反斜杠
我有一个URL,看起来像:Regex 如何在htaccess中替换URL中的反斜杠,regex,.htaccess,Regex,.htaccess,我有一个URL,看起来像: http://example.com/yyy/zzz/something\'s%20List/12/blah=somethingxmore 我需要将此重定向到: http://example.com/yyy/zzz/something's+List/12/blah=somethingxmore 到目前为止,我已经: RewriteCond %{THE_REQUEST} (^(/yyy/zzz/)\s|%20) RewriteRule ^([^\s%20]+)(?:
http://example.com/yyy/zzz/something\'s%20List/12/blah=somethingxmore
我需要将此重定向到:
http://example.com/yyy/zzz/something's+List/12/blah=somethingxmore
到目前为止,我已经:
RewriteCond %{THE_REQUEST} (^(/yyy/zzz/)\s|%20)
RewriteRule ^([^\s%20]+)(?:\s|%20)+([^\s%20]+)((?:\s|%20)+.*)$ $1$2+$3 [N,DPI]
RewriteRule ^([^\s%20]+)(?:\s|%20)+(.*)$ /$1+$2 [L,R=301,DPI]
这允许我将%20替换为加号(+),但我尝试了许多不同的规则来替换\'但没有成功。只是有兴趣,但是URL中如何有“\”呢?这是客户的请求。别问我。我只知道,当我在浏览器中用该地址按enter键时,“\”将转换为“/”
RewriteCond %{HTTP_HOST}:%{SERVER_PORT}s ^(.*):(443(s)|\d+s)$
RewriteRule ^/?(yyy/zzz/.*?)\\'s( |\%20)(.*)$ http%3://%1/$1's+$3 [R=301,L,QSA]