Isso é um pouco difícil sem ver mais da sua configuração. Como o Satisfy
corrigiu, acho que há um Require
aplicado a esse local. A diretiva Satisfy any
faz com que seja compatível com o Allow
(com seu host de origem) ou com o Require
(com seu usuário) para permitir acesso.
Usar um nome de host com Allow
é um suspeito inicial; isso depende do DNS direto e reverso ser impecável para o cliente. Estou um pouco incerto sobre o que você quer dizer com "somente de certos sites"; você precisa que a diretiva Allow
seja inclusiva de todos os sistemas clientes permitidos. Se todos os seus DNS avançados e reversos não corresponderem exatamente ao que você especificou, isso seria quebrado.
Além disso, o uso de <Limit>
depende de haver Deny from all
fora do bloco para restringir outros métodos. Portanto, se o Order
estiver definido como Allow,Deny
, isso será quebrado. <LimitExcept>
é melhor quando possível, pois você pode ser mais explícito sobre o bloqueio de métodos indesejados; <Limit>
arrisca acesso não intencional de mais alto nível.
Vou definir coisas explicitamente que você provavelmente tem em outro lugar, mas quero ter certeza de que algo de outro lugar não pode quebrá-lo (exceto um Deny
; certifique-se de que não haja nenhum extra acima). :
Order Allow,Deny
# allowed subnet
Allow from 10.5.1.0/24
# allowed host
Allow from 86.12.76.12
AuthType Basic
AuthName "blah"
AuthUserFile /path/to/htpasswd
Require valid-user
Satisfy all
<LimitExcept GET POST>
Deny from all
</LimitExcept>