Eu cometi uma falha ao comprar o certificado SSL errado para o meu domínio?

7

Acabei de adquirir um certificado SSL de Go Daddy . Eu configurei o certificado para ser:

www.mydomainname.com (I changed the domain as you can tell.)

Eu configurei o Apache e está funcionando. Então, quando eu digito https://www.mydomainname.com , tudo funciona.

NO ENTANTO:

Quando digito http://www.mydomainname.com , recebo este erro do Apache:

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.

Eu esperava poder digitar

http://www.mydomainname.com para solicitações HTTP

e

https://www.mydomainname.com quando quero solicitações seguras.

O que eu fiz de errado?

Aqui está minha configuração do Apache:

Em sites habilitados (estou usando a configuração Apache do Ubuntu)

Eu tenho um arquivo chamado ssl

    <IfModule mod_ssl.c>;
        SSLEngine On
        SSLCertificateFile /etc/apache2/ssl/www.mydomainname.com.crt
        SSLCertificateKeyFile /etc/apache2/ssl/www.mydomainname.com.key
    </IfModule>

e outro chamado webapp :

    <IfModule mod_proxy_ajp.c>
        ProxyRequests On
        ProxyVia On

        <Location />
            Order allow,deny
            Allow from all
            AuthType Basic
            AuthName "Restricted area"
            AuthUserFile /etc/apache2/passwd/access
            Require valid-user
            ProxyPass ajp://localhost:9999/
            ProxyPassReverse ajp://localhost:9999/
        </Location>

        <Location /uploader>
            Order allow,deny
            Satisfy Any
            Allow from all
            ProxyPass ajp://localhost:9999/uploader
            ProxyPassReverse ajp://localhost:9999/uploader
        </Location>
    </IfModule>
    
por Peter Mortensen 06.03.2010 / 15:28

4 respostas

10

Verifique sua configuração do Apache para verificar se você está ouvindo na porta 80 para HTTP e na porta 443 para HTTPS.

No seu /etc/httpd/conf/httpd.conf , você deve ter "Listen 80". Você também deve ter um arquivo /etc/httpd/conf.d/ssl.conf (provavelmente) com "Listen 443" especificado nele.

Você precisa de hosts virtuais configurados, um para *: 80 e um para *: 443. O *: 443 precisa ter a especificação SSL, o *: 80 não deve ter o conteúdo SSL nele.

Você não comprou a certificação SSL incorreta.

    
por 06.03.2010 / 15:34
1

Você realmente precisa configurar 2 VHosts, o SSL VHost e o não-SSL VHost diferem apenas pela parte SSL que você realmente coloca no VHost, já que você poderia ter uma infinidade de SSL VHosts (escutando em portas diferentes). Na verdade, não faz sentido fornecer isso em um contexto amplo de servidor, que eu acho que é o que você está fazendo.

    
por 09.06.2009 / 21:49
1

OK, eu consertei. Eu me confundi com não ter Virtualhost antes. Esta é a configuração final:

A configuração do

ssl é:

    <VirtualHost *:443>
        DocumentRoot /var/www/

        <IfModule mod_proxy_ajp.c>
            ProxyRequests On
            ProxyVia On

            <Location />
                Order allow,deny
                Allow from all
                AuthType Basic
                AuthName "Restricted area"
                AuthUserFile /etc/apache2/passwd/site-access
                Require valid-user
                ProxyPass ajp://localhost:9999/
                ProxyPassReverse ajp://localhost:9999/
            </Location>

            <Location /uploader>
                Order allow,deny
                Satisfy Any
                Allow from all
                ProxyPass ajp://localhost:9999/uploader
                ProxyPassReverse ajp://localhost:9999/uploader
            </Location>
        </IfModule>

        <IfModule mod_ssl.c>
            SSLEngine On
            SSLCertificateFile /etc/apache2/ssl/www.mydomain.com.crt
            SSLCertificateKeyFile /etc/apache2/ssl/www.mydomain.com.key
        </IfModule>
    </VirtualHost>

A configuração do Webapp é:

    <VirtualHost *:80>
        DocumentRoot /var/www/

        <IfModule mod_proxy_ajp.c>
            ProxyRequests On
            ProxyVia On

            <Location />
                Order allow,deny
                Allow from all
                AuthType Basic
                AuthName "Restricted area"
                AuthUserFile /etc/apache2/passwd/site-access
                Require valid-user
                ProxyPass ajp://localhost:9999/
                ProxyPassReverse ajp://localhost:9999/
            </Location>

            <Location /uploader>
                Order allow,deny
                Satisfy Any
                Allow from all
                ProxyPass ajp://localhost:9999/uploader
                ProxyPassReverse ajp://localhost:9999/uploader
            </Location>
        </IfModule>
    </VirtualHost>
    
por 06.03.2010 / 15:33
0

Se você comprou o certificado errado e não é apenas um problema de configuração, o melhor plano é cancelar / revogar o certificado e reeditá-lo.

A maioria das autoridades de certificação tem uma política de que eles farão isso de graça por um determinado período de tempo (ou seja, uma semana).

Espero que isso ajude.

    
por 09.06.2009 / 21:58