#やりたいこと
Webサイト全体にBasic認証をかけますが、特定のページ(特定のパス以下)の場合のみBasic認証を外したいです。
これをApacheの設定で実施したいです。
(例)
https://example.com/ → Basic認証あり
https://example.com/menu/ → Basic認証あり
https://example.com/noauth/ → Basic認証なし
##悩んでいること
色々調べて、Apacheの設定で全体にBasic認証を実装することまでは出来ておりますが、
特定のページ(特定のパス以下)の場合のみBasic認証を外す挙動が出来ずに悩んでいます。
Wordpressの為、Webサイトにディレクトリは存在しません。
その為設定は、DirectoryディレクティブではなくLocation もしくは LocationMatchで行うものかと考えていますが、現状うまくいっていません。
##実行環境
サーバ: Amazon EC2, AmazonLinux2
Webサーバ: Apache2.4
Wordpress実行環境: KUSANAGI
##うまくいかなかった設定例1
以下confファイルを作成してapacheをreloadした場合、/noauthにだけBasic認証がかかってしまいました。
(ファイル /etc/httpd/conf.d/auth_basic.conf)
# 全てにBasic認証をかける # あるIPアドレスはアクセス拒否する(virtualhostで設定済) <Location "/"> <RequireAll> AuthType Basic AuthName "Basic Auth" AuthUserFile /hoge1/hoge2/kusanagi/example.com/DocumentRoot/.htpasswd Require valid-user Require not env block_ip </RequireAll> </Location> # パスが/noauthから始まる場合はBasic認証をかけない # あるIPアドレスはアクセス拒否する(virtualhostで設定済) <LocationMatch ^(?!(/noauth))> <RequireAll> Require all granted Require not env block_ip </RequireAll> </LocationMatch>
【追記】
色々試す内に何故上記のように設定をしようとしたか覚えていないのですが、
**<LocationMatch ^(?!(/noauth))>ではなく<LocationMatch /noauth>**でも試してみましたが、その場合はどちらもBasicがかかったままの状態になりました
##うまくいかなかった設定例2
全体にBasicがかかったまま
<Location "/"> <RequireAll> AuthType Basic AuthName "Basic Auth" AuthUserFile /hoge1/hoge2/kusanagi/example.com/DocumentRoot/.htpasswd Require valid-user Require not env block_ip </RequireAll> </Location> <Location /noauth> Satisfy Any Require all granted Require not env block_ip </Location>
##うまくいかなかった設定例3
全体にBasicがかかったまま
全体にBasicをかけるが、/noauthの場合のみ全て許可する、というイメージで設定をしているのですが、思ったような挙動ではないです、、
<Location "/"> <RequireAll> AuthType Basic AuthName "Basic Auth" AuthUserFile /hoge1/hoge2/kusanagi/example.com/DocumentRoot/.htpasswd Require valid-user Require not env block_ip </RequireAll> </Location> <Location /noauth> <RequireAll> Require all granted Require not env block_ip </RequireAll> </Location>
思い当たる原因を1つずつ潰してはいるものの、現在潰し切ってしまい困り果てている状況です。
上記、設定の誤りや、疑わしい箇所などございましたら
恐れ入りますがご教示頂けますと幸いです。

回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/05/11 09:01