Comment créer un hôte virtuel qui fonctionne avec http et https?

8

Voici comment j'ai configuré un hôte virtuel:

<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>

Avec cette configuration, je ne peux voir mon site qu'avec https, mais pas http. Lorsque je désactive SSLEngine, je ne peux pas afficher mon site avec https, mais http fonctionne correctement.

Comment puis-je ajuster les lignes ci-dessus afin que je puisse voir mon site en utilisant http et https?

J'utilise OSX Lion, mais je ne pense pas que cela compte beaucoup.

Merci.

Baha
la source

Réponses:

7

Vous devez créer deux hôtes virtuels ainsi:

<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>

Le premier est un HTTPhôte régulier , tandis que le second gère votre HTTPStrafic.

Mike Insch
la source
Est-il possible de déplacer le code commun dans un fichier différent et de l'inclure pour faciliter la maintenance?
Ponkadoodle