apacheの.htaccessでindex.html等がない形のURLへリダイレクトする

ht
このエントリーをはてなブックマークに追加
PR

index.htmlやindex.phpへアクセスがあった時に、URLが http://9-bb.com/index.html で表示せずに index の部分がない形のURL http://9-bb.com/ へとリダイレクトするようにする htaccess での設定方法です。.htaccess でのindex部分を無くす方法はよく紹介されているのですが 汎用的に使えない方法がよく紹介されていて開発環境からの移行の時に修正する手間がでるのでもっとスマートな利用方法を今回は紹介したいと思います。

 

 

.htaccess でindexページの表示をコントロールする

.htaccess に以下のように記述する

RewriteCond %{THE_REQUEST} ^.*/index\.php
RewriteRule (.*)index\.php$ http://%{HTTP_HOST}/$1 [R=301,L]

%{HTTP_HOST} のところが良くみるケースではそのままのURLを記述している事が多いのですが %{HTTP_HOST} を使うことで 例えば http://9-bb.com/index.php へとアクセスしていたら 9-bb.com っていう部分が自動的に解釈されて http://9-bb.com/ へと移動することになる。

上の例では php ファイルの例ですが html なら php の部分を html に変え。https の場合だったら http の部分を https に変えればOKです。

これで、開発環境での .htaccess をそのまま本番環境にも使えるので うっかりリダイレクト先のURLが違ってたって事を防げる。

 

PR

COMMENT

コメントを残す

PR

9ineBBの管理人が運営するサイト

WDG WEB DESIGN GALLERY ウェブデザインギャラリー CC0 PHOTO 無料で使える高画質な写真をダウンロード、クレジット表記、リンク不要

9ineBBの最新情報をチェック・購読

Twitter Facebook Google+ Feedly RSS

どこをクリックしてもこの表示を消せます
(3日後以降に再度表示されます)