2012-05-03 18 views
1

私のhtaccessファイルを使用して、.html(および必要なら他のもの)のファイル拡張子を私のWeb URLから削除しようとしています。htaccessで.htmlを削除します。

問題は、サイト内のリンクを経由して手動で.htmlをすべて削除しないと動作しないようです(サイトをローカルでかなり迷惑にしてしまい、 .htmlファイル拡張子を削除するはずです)。

RewriteEngine on 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_FILENAME}\.html -f 
RewriteRule ^(.*)$ $1.html 

私のサイトのリンクを介してクリックすると、代わりにwww.mysite.com/about.htmlのwww.mysite.com/aboutにおけるユーザーの種類は、除いて、それはまだ拡張子を追加する場合、これは動作しますか?

http://www.mysite.com/aboutなどで私のサイトの.html、絶対リンクを削除する最善の方法は何ですか?または、拡張子を削除し、../about.htmlの代わりに../aboutのようなパスを持つべきですか?

答えて

2

.htaccessファイルではコードが変更されないため、拡張機能をページ(リンク用)に置いた場合は削除する必要があります。

+0

リンクを持たないための拡張機能のベストプラクティスを削除しているのですか、別の方法がありますか? – andy

+0

htaccessファイルでは自動ではないので、ベストプラクティスです。 URLリライティングはシノニムなので、拡張機能を記述すると、コード内でworks => removeとなり、シノニムが使用されます。 – Julien

+0

私のコードで.htmlや.php拡張子を削除することには欠点はないということです。 – andy

関連する問題