.htaccessを有効にする
※当サイトは、アフィリエイト広告を掲載し、収益を得て運営しています。
.htaccessは、httpd.confにて利用可能な設定になっていないと使えません。初期状態で有効になっている場合もありますが、もし有効になっていない場合のために、.htaccessを有効に設定する方法をご紹介します。
当サイトに記載されているものは、全て学習目的のローカルテストサーバー向けです。その他の用途には適切でない可能性もありますのでご注意下さい。
.htaccessの有効・無効を指定する記述方法
まずは先に指定方法を確認しましょう。.htaccessの許可設定を変更するには、AllowOverride ディレクティブというものを使用します。具体的には、
というような指定をします。[ キーワード ]部分に特定のキーワードを記述することにより、許可する項目を指定できます。その指定方法を見ていきましょう。
.htaccessを無効にする
.htaccessを無効にするには、[ None ]を使います。
.htaccessを有効にする
.htaccessを有効にするには、[ All ]を使います。
ローカル環境であれば、この二つだけ覚えておけばかまわないと思います。しかし実は、特定の機能にしぼって許可することも可能です。興味のある方はApacheのマニュアルを覗いてみるといいでしょう。
<Directory> セクション内に記述する
これらの指定は、httpd.confの<Directory>~</Directory>セクション内に記述します。それ以外のところでは利用できませんので注意してください。
実際に有効に設定する
さて、それでは.htaccessを実際に有効にしてみましょう。
大本であるディレクトリの設定を確認する
まずは、一番の大もとであるディレクトリ全体の設定を見てみましょう。httpd.confの基本ディレクトリ設定である<Directory />~</Directory>で挟まれた部分を見てみます。ちなみに私の設定は下記のようになっていました。
~中略~
AllowOverride None
~中略~
</Directory>
ここの赤字の部分である、AllowOverride None というのは.htaccessを許可しないという意味です。もともとこのような記述になっていると思いますが、基本的にこの部分はAllowOverride Noneが相応しいでしょう(テスト用なのでここで有効にしてもかまわないかもしれませんが、適切な部分にのみ設定する癖を付けることは大事です)。
適用したいディレクトリを決める
次に.htaccessの設定を変更したいディレクトリを決定します。ローカル用のテストサーバーなら、ドキュメントルートディレクトリでいいでしょう。今回はD:/wwwというディレクトリ(実際にはフォルダ)に、.htaccessの設定をするということを例に解説します。他のディレクトリに設定したい方は、D:/www部分を読み替えてください。
まずは下記のように表記されている場所を探します。もしなければ、作ってください(~中略~の部分は実際にはいりません)。
~中略~
</Directory>
上記の<Directory "D:/www">から</Directory>に挟まれた間に設定を施します。
設定する
さて、本ページの最初に解説したことのおさらいです。具体的にどのような指定をするかを確認してみましょう。
AllowOverrideが存在しない場合
AllowOverrideがディレクティブが、<Directory "D:/www">内に記述されていない場合は、AllowOverride Allをしましょう。
~中略~
AllowOverride All
~中略~
</Directory>
AllowOverrideがすでに存在している場合
AllowOverrideがディレクティブが、<Directory "D:/www">内にすでに存在している場合は、AllowOverrideの後に記載されている部分を見てみましょう。
~中略~
AllowOverride None
~中略~
</Directory>
この場合はNoneになっているので、下記のようにAllに変更します。そのまま修正するよりも、コメントアウトして、新規追加する方が、初心の方にはお勧めです。
~中略~
# AllowOverride None
AllowOverride All
~中略~
</Directory>
上記を保存してApacheを再起動すれば設定が反映されます。念のため補足しておきますが、上記はローカル用です。本番サーバーの場合は、サーバ管理者と相談してくださいね。
12/06/30 facebookページ開設しました。RSS代わりにも使いたいと思います。
コメント
この記事へのコメントはまだありません。
↓もし参考になりましたら、シェアしていただけると嬉しいです(^-^)