.phpや.htmlなどの拡張子をURL表示させない方法
こんにちは!
WordPressの場合はデフォルトの設定でファイルの拡張子が表示されませんが、通常Webサイトをサーバーにアップして公開すると、URLにファイルの拡張子が表示されます。
この最後の「.html」の部分が拡張子。これを
このように拡張子の部分を表示上だけ消す方法を紹介します。
.htaccessに
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}\.php -f
RewriteRule ^(.*)$ $1.php
上記の例は.phpを非表示にする例ですが、.htmlを非表示にしたい場合は「.php」の部分を「.html」に変更してください。
これで、
https://xxxxx.com/example/test
でのアクセスが可能になりました。
末尾に「/」をつけるとサブディレクトリに飛んでしまうので、拡張子を取り除いたのみの状態でアクセスする必要があります。
リンク先を編集
拡張子なしでアクセスが可能になりましたが、これは
https://xxxxx.com/example/test
でアクセスした際に
https://xxxxx.com/example/test.php
を表示させているだけに過ぎませんので、ファイル内のリンク指定で
<a href="test.php">
となっていると、もちろん
https://xxxxx.com/example/test.php
へのアクセスになります。
ですので、ファイル内のリンク先も
<a href="test">
と拡張子なしに合わせてあげると
https://xxxxx.com/example/test
といった表示になりますので、適宜書き換えてください。