.htaccessでアクセス管理する場合
.htaccessとは
.htaccessとはウェブサーバーであるApache環境でディレクトリ単位で管理する設定ファイルです。
※NGINXでは使えません。
※基本的にはサーバー側の.confで管理したほうが良いです。
.htaccessをサーバーで有効にする
下記ファイルを変更する。
/etc/apache2/apache.conf
<Directory "/var/www/test.com">
Options Indexes FollowSymLinks
AllowOverride ALL
Require all granted
</Directory>
やりたいこととしては以下。
- Directoryで.htaccessを有効にしたいディレクトリを指定。(基本的にドメイン配下ディレクトリになるかなぁ)
- AllowOverride ALLで有効化。
デフォルトはAllowOverride NONE(無効)になっているよ。
任意の設定を記述したファイルを設置
任意のディレクトリに設定を記述した.htaccessを設置する。
例えば、test.com/test/を全ての直アクセス禁止にしたい場合は以下内容を記述する。
deny from all
--ディレクトリ構造
test.com
├── test
└──.htaccess
└──index.php
特定のIPのみアクセス可能にする場合。
order deny,allow
deny from all
allow from 指定のIP
allow from 指定のIP
※色々な書き方があるんで適宜調べながら記述するように。
DocumentRootで制御するとき
下記ファイルに追記する。
/etc/apache2/apache.conf
<Directory /var/www/test.com/test/test>
Require all denied
</Directory>
上記を記述することでhttps://test.com/test/testのディレクトリに直アクセスするとForbidden出てくれます。