web関連
【.htaccess】特定のIPを除外してベーシック認証をかける方法
特定のIPアドレス以外からのアクセス時はベーシック認証をかけた時のメモ
特定のIPアドレス以外からのアクセスはベーシック認証
Satisfy Any
# ベーシック認証をかけるためのコード
AuthType Basic
AuthName "Input your ID and Password."
AuthUserFile /home/ドメイン名/フォルダ名/.htpasswd
require valid-user
# 特定のIPアドレスを除外する記述
order deny,allow
deny from all
allow from 000.000.000.00
Satisfy Any
が「OR条件」の役割をするみたい
今回のコードはベーシック認証かIPどっちかが通ってればアクセスできるってコード
デフォルトの設定はSatisfy All
で「AND条件」になるみたいだからSatisfy Any
は必須
でも、Satisfy Any
の位置がそこでいいのかはよくわからない
.htpasswdに設定するコードは以下サイトで生成できる
「Satisfy Any」を使った書き方は古いみたい
Satisfy Any
を使った書き方がApache2.2までの書き方らしくて2.4以降は<RequireAny>
を使った方がいいみたい
AuthType Basic
AuthName "Local Informatin for Hoge"
AuthUserFile /home/ドメイン名/フォルダ名/.htpasswd
<RequireAny>
Require ip 000.000.000.00
Require valid-user
</RequireAny>
上のコードを書き直すとこう
動いた
ファイルパスはサーバーのコンパネから確認した方がいいかも
サーバーによって構造違うから…(1敗)