Como crio um host virtual que funciona com http e https?


8

É assim que eu configurei um host virtual:

<VirtualHost mysite> 
  <Directory "/Users/myusername/sitefolder"> 
    Options +FollowSymlinks
    AllowOverride All 
    Order Allow,Deny
    Allow from all
  </Directory> 
  DocumentRoot "/Users/myusername/sitefolder"
  ServerName mysite
  SSLEngine on
  SSLCertificateFile /Users/myusername/certs/server.crt
  SSLCertificateKeyFile /Users/myusername/certs/server.key
</VirtualHost>

Com essa configuração, posso visualizar meu site apenas com https, mas não com http. Quando desligo o SSLEngine, não consigo visualizar meu site com https, mas o http funciona bem.

Como posso ajustar as linhas acima para que eu possa ver meu site usando http e https?

Estou usando o OSX Lion, mas acho que não importa muito.

Obrigado.

Respostas:


7

Você precisa criar dois hosts virtuais assim:

<VirtualHost mysite:80> 
  <Directory "/Users/myusername/sitefolder"> 
    Options +FollowSymlinks
    AllowOverride All 
    Order Allow,Deny
    Allow from all
  </Directory> 
  DocumentRoot "/Users/myusername/sitefolder"
  ServerName mysite
</VirtualHost>


<VirtualHost mysite:443> 
  <Directory "/Users/myusername/sitefolder"> 
    Options +FollowSymlinks
    AllowOverride All 
    Order Allow,Deny
    Allow from all
  </Directory> 
  DocumentRoot "/Users/myusername/sitefolder"
  ServerName mysite
  SSLEngine on
  SSLCertificateFile /Users/myusername/certs/server.crt
  SSLCertificateKeyFile /Users/myusername/certs/server.key
</VirtualHost>

O primeiro é um HTTPhost regular , enquanto o segundo lida com o HTTPStráfego.


Existe alguma maneira de mover o código comum para um arquivo diferente e # incluí-lo para facilitar a manutenção?
Ponkadoodle

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.