1

我需要将变量附加到动态链接以进行下游跟踪。

附加?var=true适用于 mysite.com/ 链接(我正在检测现有变量并附加 a&var=true如果它们存在),但如果没有尾随“/”,它会中断。

在“?”之前 使用 '/' 更正此问题,但随后会破坏 mysite.com/info.php 格式的链接(CSS 的路径问题)。

是否有服务器设置或 .htaccess 更改以允许 mysite.com?var=true 形式的点赞正确解析?

mysite.com?var=true     <- broken

mysite.com/?var=true    <- works

mysite.com/info.php?var=true  <-works

mysite.com/info.php/?var=true <-broken

服务器是阿帕奇。

谢谢!

4

2 回答 2

0
RewriteEngine On 
RewriteRule /(.*)$ /info.php?id=$1 

这可能会做到这一点,或者你的 .htaccess 文件中的一个变体

于 2012-09-10T21:00:37.223 回答
0

如果您想将变量附加到网站的所有 url,请在 htaccess 中尝试:

RewriteEngine on
RewriteCond %{QUERY_STRING} !^(.*&)?var=true(&.*)?$
RewriteRule ^(.*)$ /$1?var=true [L,QSA]

但这不会改变用户浏览器中的 url(他不会看到添加的变量,但服务器会)。如果要显示它,则必须将重定向标志 [R] 添加到最后一行:

RewriteEngine on
RewriteCond %{QUERY_STRING} !^(.*&)?var=true(&.*)?$
RewriteRule ^(.*)$ /$1?var=true [L,QSA,R]
于 2012-09-11T10:25:25.060 回答