LoginSignup
1
0

More than 5 years have passed since last update.

.htaccess の書き方メモ

Posted at

普段は BASIC 認証をかけたいディレクトリに .htaccess を設置するのだけれど、そのディレクトリが存在しない(example.jp/index.php/admin/ が管理画面の URL)システムに BASIC 認証をかける時に悩んだので。
httpd.conf が触れるのであれば、LocationMatch とかを使えばいいらしいが、レンタルサーバではそういうわけにもいかなかったので、.htaccess で対応。
仮想ディレクトリとでもいうのだろうか。
「特定の URL に BASIC 認証をかける」ではなく、「特定の URL(本番環境のフロント全部)だけ BASIC 認証をかけない」というやり方。

.htaccess
# 大前提として、全部閲覧禁止とする
Order deny,allow
Deny from all

# BASIC認証が通った場合は閲覧許可
AuthUserFile "/home/SERVER_ID/example.jp/htpasswd/.htpasswd"
AuthName "Input your ID and Password."
AuthType Basic
require valid-user

# もしくは・・・
Satisfy any

# URL が管理画面か、ホスト名がテスト環境で無い場合は閲覧許可
SetEnvIf Request_URI "/admin/*" noauth
SetEnvIf Host "test.example.jp" noauth
allow from env=!noauth

参考にさせていただいたサイト
特定URL時のみ、basic認証

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0