Apache 2.4는 모든 것을 혼합한 것 같습니다. IP 거부와 사용자 거부는 더 이상 독립적으로 작동하지 않습니다.
이전 버전에서는 다음과 같이 이 두 가지를 활성화하고 다른 것에 영향을 주지 않고 사용할 수 있었습니다.
deny from all
allow from ip1
allow from ip2
apache2.4에 해당하는 내용은 다음과 같습니다.
require ip ip1
require ip ip2
여태까지는 그런대로 잘됐다.
하지만 웹 사이트에 htacess+htpasswd가 있으면 동작은 예상과 다릅니다. 필요한 IP가 비밀번호 없이 들어갈 수 있다고 생각하고 IP를 분석하며 .htaccess
최악의 경우 IP가 비밀번호 범위를 벗어났기 때문입니다. 필수 목록, .htaccess
로그인을 시도해주셔서 감사합니다비밀번호 있음이것은 Apache 2.2가 하는 일이 아닙니다!
고대 아파치에서는 허용된 호스트는 다음과 같았습니다.오직인증을 시도할 수 있습니다. 허용되더라도 .htaccess
사이트를 열려면 여전히 비밀번호가 필요합니다.
이제 mod_acess_compat를 사용하여 해당 동작을 해결할 수 있습니다... 하지만 Apache 2.4에서 고대 명령을 사용하고 있기 때문에 이것이 해결책이라고 생각하지 않으며... 이 모듈의 예상치 못한 동작이나 사용 중단이 걱정됩니다. ..
답변1
당신이 원하는 것은 다음과 같은 것 같습니다 :
<RequireAll>
<RequireAny>
Require ip ip1
Require ip ip2
</RequireAny>
Require valid-user
</RequireAll>