Força a https antes da autenticação - sem acesso ao vhost

1

Eu sou um iniciante quando se trata de servidores e eu tenho um problema semelhante ao este . Ao acessar a página da Web desejada, o .htpasswd solicita uma autenticação antes de eu ser redirecionado para https.

Existe alguma solução apenas editando o arquivo .htaccess, porque não tenho permissão para alterar o arquivo conf vhost.

As linhas relevantes no meu arquivo .htaccess até agora são assim:

BlockquotRewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteCond %{ENV:HTTPS} !=on
RewriteRule .* https://%{SERVER_NAME}%{REQUEST_URI} [R=301,L]


AuthType Basic
AuthName "members only"
AuthUserFile /var/www/myweb/.htpasswd
Require valid-user
    
por aldorado 09.01.2015 / 15:42

2 respostas

1

Existe uma diretiva SSLRequireSSL que pode funcionar para você aqui - link

    
por 09.01.2015 / 15:51
0

RequireSSL tem a desvantagem de que, se alguém se conectar a apenas "http: //", terá um acesso negado.

Uma solução mais amigável é ter duas entradas VirtualHost (uma para HTTP, uma para HTTPS) e fazer com que a primeira faça um redirecionamento. Por exemplo

<VirtualHost *:80>
    ServerName www.yoursite.com
    ServerAlias yoursite.com

    Redirect permanent / https://www.yoursite.com/
</VirtualHost>
<VirtualHost *:443>
    SSLEngine on

    AuthType Basic
    AuthName "members only"
    AuthUserFile /var/www/myweb/.htpasswd
    Require valid-user
    ....
</VirtualHost>

No seu caso, isso também significa que eles serão redirecionados para o site SSL antes , sendo solicitada uma senha.

    
por 10.02.2015 / 17:09