読者です 読者をやめる 読者になる 読者になる

phpとか

自分用備忘録なので、自分が分かる程度にしか書いてません。

特定URL時のみ、basic認証

Linux php

管理画面が同一サイトの/adminとかで、ip制限はしないけどbasic認証は入れとく。
かつ、再起動はさせたくない。

という仕様を実装することになりました。
下記のブログ様を参考にさせていただきました。ありがとうございます。

【cakePHP】.htaccessでmod_rewriteを使いつつ特定のURLをBASIC認証なしにする | ぼくの答えはいつもNo…そしてYes!

apache再起動OKなら、httpd.confにlocatoinディレクティブとか書いてすぐ終わるんですが、
今回はダメとのことなので.htaccessに下記を追記することで対応しました。

fuelphpなので、filesディテクティブとかで物理パスを指定できなかったため。

SetEnvIf Request_URI "/admin*" noauth
AuthUserFile /var/www/.htpasswd
AuthName "Input your ID and Password."
AuthType Basic
require valid-user
Satisfy any
Order Deny,Allow
Deny from all
allow from env=!noauth


下記で一旦全拒否。

Order Deny,Allow
Deny from all

Satisfy anyで、下記のどちらかの場合、許可する。という感じです。

  • require valid-user(basic認証突破)
  • allow from env=!noauth(/adminでない。)



Unity5の教科書 2D&3Dスマートフォンゲーム入門講座 (Entertainment&IDEA)

Unity5の教科書 2D&3Dスマートフォンゲーム入門講座 (Entertainment&IDEA)