SSL - como fazer com que tanto o http quanto o https funcionem

4

Eu configurei um site do Drupal 6 em um servidor dedicado e habilitei o SSL através do painel de controle "Matrix" que foi instalado nele.

O problema é agora, o site só carrega páginas de https. A maioria das imagens não carrega, eu presumo que isso esteja relacionado à mesma coisa. Idealmente, quero que tanto o http quanto o https funcionem, então eu posso classificar os redirecionamentos para as páginas que precisam ser seguras.

O erro apresentado ao tentar carregar uma página http normal é:

**Bad Request**

Your browser sent a request that this server could not understand.
Reason: You're speaking plain HTTP to an SSL-enabled server port.
Instead use the HTTPS scheme to access this URL, please.

Alguém pode me apontar na direção certa?

Editar:

Em sites-enabled / domainname.co.uk , há um < VirtualHost > configurado para o IP do servidor, usando a porta 80 da seguinte forma:

<VirtualHost xx.xx.xx.xx:80>
        ServerName xx.co.uk
        ServerAlias www.xx.co.uk
        ServerAdmin [email protected]
        DocumentRoot /home/default/xx.co.uk/user/htdocs
        ErrorLog /home/default/xx.co.uk/user/logfiles/error_log
        TransferLog /home/default/xx.co.uk/user/logfiles/access_log
        php_admin_value open_basedir /tmp:/home/default/xx.co.uk
        SuexecUserGroup xx matrixdomain
        ScriptAlias /cgi-bin/ /home/default/xx.co.uk/user/htdocs/cgi-bin/
        AddHandler server-parsed .shtml
        AddType text/html .shtml
        <Location />
                Options +Includes
        </Location>
# Begin user directives <--
# --> End user directives

Eu precisaria fazer outro para 443?

Em ports.conf tenho

NameVirtualHost *:80
Listen 80

<IfModule mod_ssl.c>
    # SSL name based virtual hosts are not yet supported, therefore no
    # NameVirtualHost statement here
    Listen 443
</IfModule>
    
por jsims281 11.09.2009 / 11:19

4 respostas

5

Parece que o seu httpd Apache está configurado incorretamente e tenta atender HTTPS na porta HTTP (dê uma olhada na configuração do seu host virtual para o site do Drupal) ou você está usando um esquema como link para acessar sua instalação do Drupal, que também não funcionará.

    
por 11.09.2009 / 13:45
2

O HTTP deve ser servido na porta 80 HTTPS deve ser servido na porta 443

Seu site deve funcionar em: link link .

Pode ser uma das poucas coisas:

  • Você está especificando manualmente a porta, por exemplo, se você visitar o link , isso normalmente falha
  • O servidor da web está configurado incorretamente e é, por algum motivo, conteúdo SSL do serviço na porta 80. Isso normalmente não acontecerá, a menos que haja um erro ou algo no painel de controle. Você reiniciou o apache?
  • Na configuração do drupal, é configurado que o URL do site seja " link ". Isso sempre o encaminharia para esse local, mesmo que você digite o link no seu navegador.
  • Você tem o Drupal Secure Pages instalado, mas está configurado incorretamente. Se você tiver instalado, visite o link para configurá-lo.

Acho que resume o que a questão poderia ser, deixe-nos saber sua solução!

    
por 11.09.2009 / 15:02
0

+1 Use o módulo Secure Pages (se você ainda não estiver)

Felicidades

    
por 11.09.2009 / 19:27
-1

i thing follow doc ajudará você

Blockquote

Apache: Redirecionar http para conexão segura Apache HTTP - forçar conexões HTTPS

Digamos que você tenha um subdomínio do webmail chamado link e gostaria de redirecioná-lo para a conexão segura https, ou seja link .

Isso ajudará você a proteger a privacidade do usuário e informações confidenciais, como nome de usuário e senha, remotamente.

Então, como você configura seu servidor web Apache para impedir que seus sites sejam acessados sem criptografia? Redirecionar http para a configuração do Apache https

Primeiro, verifique se o Apache está configurado para a conexão HTTPS e se os certificados SSL necessários estão instalados. Nenhum acesso não SSL, ou seja, apenas aceita conexões https

Agora abra o arquivo httpd.conf ou .htaccess (o mod_rewrite não é obrigatório):

vi httpd.conf

Anexar a seguinte linha: Redirecionamento permanente / link Qualquer solicitação feita para o link irá para link

Salve e feche o arquivo. Reinicie o Apache:

/etc/init.d/httpd restart

Esta é a maneira mais fácil de garantir que o usuário normal nunca use o protocolo HTTP de texto simples para enviar dados. Agora, isso dificulta muito mais a detecção de dados confidenciais. Forçar o login do webmail sobre a sessão SSL https

Portanto, se você deseja forçar os usuários a acessarem o webmail por meio de https, adicione a seguinte configuração ao arquivo .htaccess:

RewriteEngine On RewriteCond% {HTTPS} desativado RewriteRule (. *) link {HTTP_HOST}% {REQUEST_URI}

Certifique-se de ter algo a seguir no httpd.conf (suporte a mod_rewrite): LoadModule rewrite_module modules / mod_rewrite.so

Blockquote

    
por 11.09.2009 / 22:27