クエリ文字列のどこかに特定のIDを持つページをパスワードで保護しようとしています。私の.htaccessは次のようになります。
RewriteEngine On
RewriteCond %{QUERY_STRING} id=12
RewriteRule (.*) $1 [E=protected_uri:1]
Order Deny,Allow
AuthName "Protected"
AuthType Basic
AuthUserFile /blabla/.htpasswd
AuthGroupFile /
Require valid-user
Order allow,deny
Allow from all
Deny from env=protected_uri
Satisfy any
これはhttp://xy.com/?id=12では正常に機能しますが、http: //xy.com/index.php ?id=12では機能しません。2番目のURLには、パスワードは必要ありません。
RewriteCond-Lineのid=12は、id = 12のすべてのURLと一致する必要があるため、これが機能しない理由がわかりません。
ご協力いただきありがとうございます!ベン