2012-02-13 3 views
3

Мне дана настройка, в которой Apache работает в Windows, и у нас есть две папки, для которых требуется базовая аутентификация с помощью .htpasswd.Базовая аутентификация Apache Только SSL

Во-первых, я проверил, что аутентификация работала:

AuthUserFile E:/path-to/.htpasswd 
AuthType Basic 
AuthName "Secure area" 
Require valid-user 

Это работало хорошо, но, конечно, не отправлять учетные данные через SSL. Я попытался использовать RewriteRule для отправки любых запросов без HTTPS на HTTPS в любой из этих папок, и это требует от пользователя входа в систему дважды - один раз через HTTP и один раз через HTTPS.

Я нашел множество людей с этой проблемой, и решение, большинство людей используют, как это:

SSLOptions +StrictRequire 
SSLRequireSSL 
SSLRequire %{HTTP_HOST} eq "www.domain.com" 
AuthUserFile E:/path-to/.htpasswd 
AuthName "Secure area" 
AuthType basic 
require valid-user 
ErrorDocument 403 https://www.domain.com/secure-area 

Так я это в HTAccess внутри каждой из двух защищенных папок. Это требует от пользователя входа в систему один раз, по HTTPS, как и должно быть, но, конечно же, он не отправляет их в запрошенный файл. Скорее, он отправляет их в корень папки.

Мы часто направляем пользователей к конкретным файлам внутри этих каталогов, и я просто не могу найти что-либо, что будет проверять их с помощью auth over HTTPS при попытке сделать это. Возможно ли это на Apache?

Спасибо, Jonathan

ответ

-2

Если его для конкретного файла, вы можете обернуть его в

<files *.php> 
 
    
 
</files>

</pre></code>

или что-то, увидеть, если это имеет значение, так как это будет аутентичности для запрошенного файла, а чем каталог, в котором находится файл?

Смежные вопросы