好的伙计们,我需要添加一个例外!我该怎么做?我目前用来RewriteRule ([^.]+).html $1 [R=301,L]
重写所有 .html 网址
我确实需要 google.html 验证文件的例外。我该如何设置此例外?
我试过了,但是没有用。有什么想法吗?
RewriteCond $1 !^(google022e525bdb654772.html|googleb5e92d18c6640aeb.html)/?
我试过了
RewriteCond $1 !^(google022e525bdb654772.html|googleb5e92d18c6640aeb.html)
答案1
您拥有的方法不起作用,因为$1
a 中的反向引用(如 )RewriteCond
指的是最后匹配的组RewriteCond
而不是RewriteRule
。
请尝试以下操作:
RewriteCond %{REQUEST_URI} !^/google(022e525bdb654772|b5e92d18c6640aeb)\.html
RewriteRule ([^.]+).html $1 [R=301,L]
答案2
重写按顺序处理。在正常重写之前,放入一个不做任何更改但声明为最后一次重写的重写。
一般来说,在重写中充斥着与内容无关的信息是不好的,这些信息必须先读过去,而你可以先处理异常并消除障碍。
RewriteRule ^/google022e525bdb654772.html$ - [L]
RewriteRule ^/googleb5e92d18c6640aeb.html$ - [L]
RewriteRule ([^.]+).html $1 [R=301,L]