WindowsサーバーでHelicon Apeを使用してhtaccessファイルを作成しています。htaccess(Helicon Ape)から括弧を削除します。
元々、より大きな条件セットの一部で、urlが含まれていれば403を返すように設定されていました。しかし、それが終わるmailchimpトラッキングコードの場合には偽陽性の原因となっているが、以下のURL
http://domain.com/page/11/page-name?ct=t(Newsletter_Tracking)
、例えば()
RewriteCond %{QUERY_STRING} ^.*(\[|\]|\(|\)|<|>).* [NC,OR]
に包まれたばかり代わりに、私はかっこを削除しようとしていたし、 "クリーンなバージョン"にリダイレクトしていました。
私はSOで見つけたいくつかの異なるものを試しましたが、うまくいきませんでした。
これまでのところ、私は作業に得ることができる最も近いものがこれです:
RewriteCond %{REQUEST_URI} [\(\)]+ [OR] RewriteCond %{QUERY_STRING} [\(\)]+ RewriteRule ^(.*)[\(]+([^\)]*)[\)]+(.*)$ $1$2$3 [R=301,L]
上記のコードに問題があれば()動作するでクエリURLにあったではなく、文字列。クエリー文字列をリダイレクトしてクリーンアップしません。
だから、これは動作します: http://domain.com/page/11/pag(e-name)
が、これはないだろう: http://domain.com/page/11/page-name?ct=t(Newsletter_Tracking)
あなたの支援が
サンキュー認識されます。クエリ文字列が動的である場合は、してみてください
RewriteCond %{THE_REQUEST} /page/11/page-name\?ct=t\(Newsletter_Tracking\)\sHTTP [NC]
RewriteRule^%{REQUEST_URI}? [L,R]
:あなたは、次のルールを使用することができます
ありがとうございます。しかし、それは問題を引き起こすほど特殊すぎる。 RULEでのREQUEST_URIの使用を見てから実用的な解決策を考え出しました – imvain2