我创建了每个新用户在访问时重定向到的页面,它设置了一个cookie,允许访问我网站的其余部分。我想为一些网站及其机器人添加例外规则:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_REFERER} http://www.site1.com [NC,OR]
RewriteCond %{HTTP_REFERER} http://www.site2.net [NC,OR]
RewriteCond %{HTTP_USER_AGENT} bot1 [NC,OR]
RewriteCond %{HTTP_USER_AGENT} bot2 [NC]
RewriteRule .? - [S=1]
RewriteCond %{HTTP_COOKIE} !yes=1 [NC]
RewriteRule !^(script1.php|script2.php)$ script2.php [L]
</IfModule>
如您所见,如果cookie不存在或者!= 1每个用户都被重定向到script2.php。
我写了一些例外,但有时候它有效,有时则没有。
我在某个地方犯了错误,但我没有看到它。
你能帮我解决这个问题吗?谢谢你的时间。
答案 0 :(得分:1)
我宁愿使用[L]
代替[S=1]
。
其次,我会对script2.php进行外部重定向,因此不会缓存(错误)。因此,请在最后一条规则上使用[R,L]
而不是[L]
。