의 요청 때 다음의 .htaccess 파일이 "인증 필요"하기 모든 것이 잘 작동하고 인증 프롬프트없이 index.php가 표시됩니다. 그러나 "IP-ADDRESS /"를 요청하자마자 브라우저가 내 자격 증명을 요청합니다.는/대신 내 서버에 /index.php
왜 이런 경우입니까? 내가 뭘 놓치고 있니?
의 요청 때 다음의 .htaccess 파일이 "인증 필요"하기 모든 것이 잘 작동하고 인증 프롬프트없이 index.php가 표시됩니다. 그러나 "IP-ADDRESS /"를 요청하자마자 브라우저가 내 자격 증명을 요청합니다.는/대신 내 서버에 /index.php
왜 이런 경우입니까? 내가 뭘 놓치고 있니?
블록을 교체하여 mod_setenvif를 사용하여 <Files>
대신 요청 URI를 확인하십시오. mod_auth * 모듈은 mod_dir보다 우선권을 가지므로 /
에서 /index.php
까지의 매핑은 auth가 수행 될 때까지 발생하지 않습니다. Mod_setenvif는 인증 전에 발생합니다. 시도 :
SetEnvIf Request_URI "^/$" allow=yes
SetEnvIf Request_URI "^/index.php$" allow=yes
AuthType Basic
AuthName "Password Required"
AuthUserFile /var/www/webinterface/.htpasswd
Options +FollowSymLinks
Order Deny,Allow
Satisfy any
Deny from All
Require valid-user
Allow from env=allow
을 요청 URI가 정확히 /
또는 /index.php
경우, 변수 allow
가 설정됩니다. Auth 라인 이후의 내용은 변수 allow
이 설정된 경우 유효한 사용자 또는을 제외한 모든 것을 거부한다고 말합니다.
와우, 나는 깊은 인상을 받았습니다. 그것은 위대한 anser이었다. 고맙습니다. – ftiaronsem
AuthType으로 시작하는 블록을
이 문제를 어떻게 해결할 수 있는지 이해할 수 있습니까? 암호 보호 기능이없는 디렉토리 내의 모든 파일과 하위 디렉토리에 대한 액세스를 허용하고 싶지만/또는 /index.php에 비밀번호 인증을 요구하고 싶습니다. index.php 파일을 암호로 보호 할 때 암호없이 액세스 할 수 있습니다. 위의 답변을 위의 역방향 및 내 경우 작동하도록 필요한 규칙이 들어 있지만 SetEnvIf 등 그것을 작성하는 데 충분히 이해하지 않는다고 생각합니다. – WilliamAlexander
와우 당신은 나와 똑같은 문제와 설정을 가지고 있었는데, 어쨌든 우연의 일치 –