htaccess php拡張子なしのURLにアクセスさせるmod_rewriteの書き方
PHPで作成したページにphp拡張子なしのURLでアクセスさせる方法。別段php拡張子のついたURLでもいいのだが何となくいやな場合があるので.htaccessにmod_rewriteを書いてphp拡張子なしのURLにアクセスを流す。
MixHostでMultiViewsできなかった
MultiviewsMatch Handlers
Options +MultiViews
サーバーによっては上のようにhtaccessに書いてMultiViewsにしてphp拡張子なしのURLにアクセスさせることもできるようだが、今使っているレンタルサーバーのMixHostでは思うような挙動にはならなかった。いや、できるのだろうが私にはできなかったのかもしれない。
php拡張子なしURLでもアクセス可にするmod_rewrite
# php拡張子なしでもアクセス可にする
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}\.php -f
RewriteRule ^(.*)/$ $1.php
htaccessに上の様にmod_rewriteを書くと、https://f-af.kenji-s.com/●●●.phpでもhttps://f-af.kenji-s.com/●●●/でもアクセス可能となります。
最後が拡張子.phpではなくて/で終わるWordPress風のURLになります。php拡張子だけではなく、htmlでもhtmでも拡張子なしのURLにできるはず。
リダイレクトはSEO的によくないし、複数のURLでアクセスできるのもどうかと思うし、何よりトラブルの元になりそうなのであまりやりたくないですね。拡張子なしにするメリットは、一見でプログラムは何で動いてるページなのかわからないことと(すぐばれる)、プログラムを変えた時なんかだけですかね。