我试过以下。这似乎不起作用。
如果引荐来源有字符串google.com,我希望重写规则触发,并保留现有的查询字符串,只需将引荐来源追加到查询字符串的末尾
RewriteEngine On
RewriteCond %{HTTP_REFERER} .*google.com.*$
RewriteRule ^(.*)$ ^(.*)$referrer=%{HTTP_REFERER} [QSA]
我确信我的重写中的某些内容是错误的。有人能指出我正确的方向吗?
答案 0 :(得分:1)
这应该对你更好:
RewriteEngine On
RewriteCond %{QUERY_STRING} !(?:^|&)referrer=
RewriteCond %{HTTP_REFERER} google\.com
RewriteRule ^(.*)$ $1?referrer=%{HTTP_REFERER} [QSA]
答案 1 :(得分:0)
这有效
RewriteEngine On
RewriteCond %{HTTP_REFERER} google\.com
RewriteCond %{QUERY_STRING} !^referrer=(.*)$ [NC]
RewriteRule ^(.*)$ $1?referrer=%{HTTP_REFERER} [L,R,QSA]
我需要添加一个条件,如果已经有一个referrer查询字符串参数,请不要附加它。另外,我得到了无限循环。
我需要一个外部重定向标志。否则它没有重定向。