.htaccessファイル/mod_rewriteの利用について
弊社レンタルサーバサービスのWeb機能では、Webサーバ上に「.htaccess」ファイルを設置することで
- IPアドレス/ホスト名によるアクセス制限(Limit)
- ユーザ名・パスワードによるBasic認証(AuthConfig)
- URLの書き換え(mod_rewrite)
- PHPの設定変更(php_flag/php_value)
といった機能を操作することができます。以下では、それぞれの機能についてご紹介いたします。
IPアドレス/ホスト名によるアクセス制限(Limit)
「.htaccess」ファイルに「Order ディレクティブ」「Allow ディレクティブ」「Deny ディレクティブ」を記述することで、そのディレクトリに対するアクセス制限を操作することができます。
Order XXXXX | AllowとDenyの評価順序を指定します。 |
---|---|
Allow from XXXXX | 指定したクライアント(IPアドレス/ホスト名)からのアクセス(閲覧)を許可します |
Deny from XXXXX | 指定したクライアント(IPアドレス/ホスト名)からのアクセス(閲覧)を拒否します |
各ディレクティブの詳しい内容、記述方法についてはApacheのマニュアルをご覧下さい。
ユーザ名・パスワードによるBasic認証(AuthConfig)
「.htaccess」ファイルに「AuthType ディレクティブ」「AuthName ディレクティブ」「Require ディレクティブ」「AuthUserFile ディレクティブ」「AuthGroupFile ディレクティブ」を記述することで、そのディレクトリにユーザ名・パスワードによる認証機能を付加することができます。
AuthType Basic | 認証方法を指定します。弊社レンタルサーバサービスではBasic認証をご利用いただけます。 |
---|---|
AuthName “XXXXX” | 認証領域の名称を指定します。 |
AuthUserFile XXXXX | 認証に使用する認証ユーザ・パスワードが格納されているファイルを指定します。※セキュリティの観点から、コントロールパネルで生成したファイルを指定することをお勧めいたします。 |
Require XXXX | AuthUserFileで指定されたファイルに登録されているユーザから認証を許可するユーザを指定します。※「全てのユーザ」を指定するには「All」と記述してください。 |
各ディレクティブの詳しい内容、記述方法についてはApacheのマニュアルをご覧下さい。
URLの書き換え(mod_rewrite)
「.htaccess」ファイルに「mod_rewrite」の設定(「RewriteRule ディレクティブ」「RewriteCond ディレクティブ」「RewriteBase ディレクティブ」など)を記述することで、URL書き換えやリダイレクトなどを付加することができます。
この機能により、ブログソフト(WordPress、Movable Type)やCMSソフト(XOOPSやJoomla)で動的なURLから、、SEO的に有利となる静的なURLへリンクURLを変更することができます。多くのブログソフトやCMSソフトには、動的なURLを静的なURLへ変更するための「mod_rewrite」設定を生成する機能が実装されています。URL書き換えを希望される場合は、各ソフトの機能で「.htacess」ファイルを生成することをお勧めいたします。
また、手動で「mod_rewrite」設定を作成する際、各ディレクティブの内容、記述方法についてはApacheのマニュアルをご覧下さい。
PHPの設定変更(php_flag/php_value)
「.htaccess」ファイルに「php_flag」「php_value」を記述することで、そのディレクトリ以下に対するPHPの設定を変更することができます。
php_flag XXXX On(Off) | PHPの設定「XXXX」の値をOn(またはOff)に変更する |
---|---|
php_value XXXX OOOO | PHPの設定「XXXX」の値をOOOOに変更する |
「php_flag」「php_value」によるPHP設定変更の詳細については、別途PHPのマニュアルをご覧下さい。
コントロールパネルより生成・設置された「.htaccess」ファイルの編集について
コントロールパネルより生成・設置された「.htaccess」ファイルに対して、お客様で独自に内容を編集することも可能です。お客様で編集を行う際は、下記の点についてご注意下さい。
- お客様で編集をする前に、コントロールパネルへログインし、対象のアクセス制限設定を再度更新してください。
- 「.htaccess」ファイルを編集する際は、「お客様専用の編集エリア(下図を参照)」のみ変更を行ってください。
コントロールパネル以外から生成・設置された「.htaccess」ファイルについて
ブログソフトやCMSソフトの中には、SEOへの対策として動的なURLを静的なURLへ変換するための「URLの書き換え(mod_rewrite)」設定を「.htaccess」ファイルとして出力する機能を持ったものがあります。
ブログソフトやCMSソフトから生成・設置された「.htaccess」ファイルがあるところへ、コントロールパネルよりアクセス制限の設定を行った場合、コントロールパネル側で、すでに設置されている「.htaccess」ファイルの内容を読み込み、コントロールパネルからのアクセス制限設定と結合(マージ)して「.htaccess」ファイルを出力します。(※1)