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. + = は、前の要素が 1 つ以上あることを示します
  6. / = URL のスラッシュ
  7. ? = 0 回または 1 回先行する一致
  8. $ = URL の終わり

上記のロジックをルールに適用しRewriteRule ^([a-zA-Z_]+)/?$ / [QSA]ます。URL が「/」に等しくないと仮定して、上記の内訳に従って一致を「/」にリダイレクトし、クエリ文字列を追加します。

于 2012-07-11T23:14:39.640 に答える