0

我最近看到过几次,但从来没有注意过。现在它引起了问题,尽管我需要弄清楚。

有时,当我在 Mac 上访问 Firefox 13 中的站点时,我会在地址栏中的 URL 末尾附加这个奇怪的字符串。

它总是以“#.T_”开头,通常类似于“#.T_3HiHDevA8”。

对于我的生活,我无法弄清楚是什么原因造成的。它仅在第一次加载时出现

我确实有一些重写正在进行,但我不明白这怎么会添加到位置栏。这是我的 .htaccess 文件。

RewriteCond %{REQUEST_URI} !=/
RewriteRule ^([a-zA-Z_]+)/?$ / [QSA]

谢谢你的帮助。

4

1 回答 1

1

'qsappend|QSA'(查询字符串追加)

此标志强制重写引擎将替换字符串的查询字符串部分附加到现有字符串,而不是替换它。当您想通过重写规则向查询字符串添加更多数据时,请使用此选项。

QSA 标志指示附加替换字符串的查询字符串。

再看一眼:

^([a-zA-Z_]+)/?$ 
  1. ^ = URL 的开头
  2. ( ) = 对一系列图案元素进行分组
  3. [ ] = 表示一组可能的匹配项
  4. a-zA-Z_ = 仅字母数字字符和下划线“_”
  5. + = 表示有一个或多个前面的元素
  6. / = URL 中的正斜杠
  7. ? = 匹配前面 0 次或 1 次
  8. $ = URL 结束

将上述逻辑应用于您的规则:RewriteRule ^([a-zA-Z_]+)/?$ / [QSA]将根据上述细分将匹配重定向到“/”并附加查询字符串,假设 URL 不等于“/”。

于 2012-07-11T23:14:39.640 回答