Regex 如何使用htaccess重写规则附加基于referer的查询字符串
好的,所以我试图在Regex 如何使用htaccess重写规则附加基于referer的查询字符串,regex,.htaccess,url-rewriting,rewrite,iirf,Regex,.htaccess,Url Rewriting,Rewrite,Iirf,好的,所以我试图在Iirf.ini中提出一些重写规则,但我不太明白。 我想检查一下推荐人,然后在你点击的url的查询字符串中添加一些内容 1.假设我来自testing.lc,只访问了域 domain.com/ 2.或具有index.cfm的域 domain.com/index.cfm 3.或具有index.cfm和任意数量查询参数的域 domain.com/index.cfm?key1=value1&key2=value2 domain.com/login?key1=val
Iirf.ini
中提出一些重写规则,但我不太明白。
我想检查一下推荐人,然后在你点击的url的查询字符串中添加一些内容
1.假设我来自testing.lc,只访问了域
domain.com/
2.或具有index.cfm的域
domain.com/index.cfm
3.或具有index.cfm和任意数量查询参数的域
domain.com/index.cfm?key1=value1&key2=value2
domain.com/login?key1=value1
domain.com/page?key1=value1
4.或具有短URL的域
domain.com/login
5.或具有短URL和任意数量查询参数的域
domain.com/index.cfm?key1=value1&key2=value2
domain.com/login?key1=value1
domain.com/page?key1=value1
到目前为止,我有类似的东西
RewriteCond %{HTTP_REFERER} ^http://testing\.lc/.*$
RewriteRule ^/([^?]+)(\?.*|/){0,1}$ /$1?newkey=newvalue [I,QSA]
这似乎对一些URL有效,但不是上面列出的所有URL。
此重写也不能使用[L],因为对于需要传递查询字符串的URL(如/login),后面还有其他匹配项
非常感谢任何帮助或建议……这是一项相当困难的工作,因为您必须首先检查是否有
?
。如果它已经存在,你必须使用&newkey=newvalue
,如果它没有?newkey=newvalue
应该被添加…是的,我已经尝试了一段时间,但我没有得到任何进展,我有类似重写cond%{QUERY|STRING}(^ |和)newkey=newvalue(&|$)
的东西,但这不起作用