- 締切済み
アドレスの最後に/が無い場合、/ありのアドレスに飛ばしたい
mod_rewrite を使って、静的なページのようにアドレスを表示させました。 http://****.jp/page/10/ このようなアドレスでアクセスできるのですが、アドレスの最後のスラッシュがなくてもアクセスする事が出来ます。 http://****.jp/page/10 ←スラッシュがない そこで、アドレスの最後のスラッシュがないアドレスにアクセスした場合、スラッシュありのアドレスに飛ばすにはどの様にすればいいのでしょうか? .htaccessは、下記のようにしています。 <IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /page/index.php [L] </IfModule>
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- Tacosan
- ベストアンサー率23% (3656/15482)
回答No.2
サイトのトップだけは http://www.example.jp と http://www.example.jp/ のどちらも正しいはずだが>#1. その他はそれでいいんだけど.
- PXU10652
- ベストアンサー率38% (777/1993)
回答No.1
ホームページのトップページを表示させるときも本当は「http://****.jp/」と表記するのが正しいのですが、「/」がないとまず、「****.jp/page/10」というファイルを探し、存在しなければ、同名のフォルダを探すというのが、httpの基本動作です。 ですから、無理に飛ばすような仕掛けは不要だと想うのですが...
補足
コメントありがとうございます。 /があろうがなかろうが、あまり変わらないような気もします。 でも、mod_rewriteの勉強の為にお願いします。 楽天のアドレスが、最後のスラッシュを取ると、スラッシュありのページに飛びます。 どうやってるのかな?ってのが、事の始まりです。