私は約10の既存のSOの質問からの回答を試みましたが、役に立ちませんでした。URLとリダイレクトからクエリ文字列を削除する書き換えルールでSalmanAの回答を使用して、次の.htaccessファイルを作成しました。
Options +FollowSymLinks
RewriteBase /
RewriteEngine On
RewriteCond %{QUERY_STRING} !=""
RewriteRule ^(.*) /$1? [R,L]
…次のようなURLを取得することを目標としています。
http://www.example.com/index.php?c=web
…そしてそれを次のように見せます:
http://www.example.com/web
Salman Aの回答に従った後、URLは次のようになりました。
http://www.example.com/?c=web
次に、「?c =」の部分を削除しようとしているときに何かを台無しにしました。残念ながら、何を台無しにしたのか正確にはわかりません。次に、他に何も台無しにしたくなかったため、.htaccessファイルを削除しました。 。これで、.htaccessファイルがなくても、一部のURL(特に、Salman Aの回答のテスト中にクリックした3つのURL)は次のようになります。
http://www.example.com/?c=web
....htaccessファイルを削除したのに。3つの質問:1).htaccessファイルを削除しても変更が持続するのはなぜですか。2)私が心配する必要があることは何でもです。そして、3)すべてのURLが次のようになるように.htaccessファイルを変更するにはどうすればよいですか。
http://www.example.com/web
更新:これは私がhttp://getluky.net/2010/12/14/301-redirects-cannot-be-undon/について心配していたことです。私が301リダイレクトを失敗させ、新しい訪問者がサイトにアクセスした場合、彼らは失敗にとらわれていますか?これをキャッシュ解除する方法はありますか?