誤って生成されたURLがたくさんあり、正しいURLにリダイレクトしたいと思います。
これは良い例です:
http://example.com/search/?q=searchterm%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F&scope=45%2F%2F%2F%2F%2F/
私はすでに次のルールでそれらのほとんどをリダイレクトすることができました:
RewriteCond%{QUERY_STRING} ^(。*)%2F RewriteRule ^ search / $ / search /?%1 [NE、R = 301、L]
私が理解しているように、これは末尾の「%2F」が削除されてからルールが再びヒットするためにのみ機能します。Googleは限られた数のリダイレクトのみを受け入れます。
だから私は「%2f」の1つ以上のオカレンスで動作するようにルールを適応させようとします
これは私がどこまで得たかです:
RewriteCond%{QUERY_STRING} ^(。*)((%2F)*) RewriteRule ^ search / $ / search /?%1 [NE、R = 301、L]
結果は次のとおりです。/search/?q=searchtermFFFFFFFFFFFFFFFF&scope=45FFFFF/
私は何が欠けていますか?
よろしく、アレクサンダー