.htaccess 基本的な機能について
2021.08.26
リダイレクト設定をしたときに.htaccessファイルがどういうものか理解が不足していたため、基本的なところを調べ直しました。
■.htaccessとは
「.htaccess」はWebサーバーの基本的な動作を、ディレクトリ単位で設定するファイルです。
Apache(アパッチ)が使用されている環境で使用することができます。
■設置場所
設定をしたいディレクトリにアップロードします。
アップロードしたディレクトリとその配下にあるディレクトリすべてに設定が反映されます。
また、.htaccessは複数設置することができます。下の階層に設置した.htaccessが優先されるため、同じページに対する設定が競合した場合には下階層の設定が優先で反映されます。
●イメージ
■基本的な機能
慣れていないため、設定したことのある基本機能を挙げていきます。
●リダイレクト設定
URLが変更になった場合などに旧ページから新ページへ自動転送させる処理です。
httpからhttpsへのリダイレクトも設定できます。
以下はhttpからhttpsへのリダイレクト設定の記述例になります。
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
●ベーシック認証の設定
Webサイトへのアクセス制限をしたい場合に、ユーザーIDとパスワードの入力を求める設定です。ベーシック認証の設定には.htaccessの他にユーザーIDとパスワードを記載する「.htpasswd ファイル」を用意する必要があります。
以下、記述例になります。
・.htaccess ファイル
AuthUserFile /フルパス/.htpasswd
AuthGroupFile /dev/null
AuthName "Please enter your ID and password"
AuthType Basic
require valid-user
・.htpasswd ファイル
ユーザーID:暗号化されたパスワード
パスワードは暗号化する必要があります。暗号化には下記のようなサイトを利用することもできます。
ユーザーIDとパスワードは「:」で区切って記載します。ユーザーIDが「xxx」、パスワード(暗号化されたもの)が「yyy」の場合は「xxx:yyy」となります。
パスワード暗号化ができるサイト
・htpasswd生成
・htpasswdファイル生成(作成)
・.htaccess Editor
●IPアドレス制限
Webサイトへのアクセスを指定したIPアドレスのみに制限する設定です。
以下、記述例になります。
Order deny,allow
Deny from all
Allow from IPアドレス
.htaccessは他にもいろいろな設定ができるようなので、理解を深めていこうと思います。
--------------------------------------------------------
【注意事項】
掲載内容は、独自に調査したものになります。最新の情報と異なる場合もございますので公式サイトにて必ずご確認ください。