Vários Certificados SSL em Execução no Mac OS X 10.6

2

Eu tenho me deparado com paredes por um tempo, então eu postei no stackoverflow, e fui apontado para cá ...

Estou tentando configurar vários endereços IP no Snow Leopard para que eu possa desenvolver com certificados SSL. Estou executando o XAMPP - não sei se esse é o problema, mas acho que teria os mesmos problemas, considerando que o apache interno está desativado.

Então, primeiro, olhei para o início dos IPs na inicialização. Eu comecei a correr com um novo StartupItem que funciona corretamente, porque eu posso fazer o ping do endereço IP:

ping 127.0.0.2
ping 127.0.0.1

E os dois trabalham. Então, agora eu tenho endereços IP, que, como você deve saber, não são padrão no OSx.

Eu editei o arquivo /etc/hosts para incluir os novos sites também:

127.0.0.1    site1.local
127.0.0.2    site2.local

Eu já tinha mudado o httpd.conf para usar o httpd-vhosts.conf - porque eu tinha alguns sites rodando no único endereço IP.

Eu editei o arquivo vhosts para que um site seja assim:

<VirtualHost 127.0.0.1:80>
  DocumentRoot "/Users/jim/Documents/Projects/site1/web"  
  ServerName site1.local
  <Directory "/Users/jim/Documents/Projects/site1">
    Order deny,allow
    Deny from All
    Allow from 127.0.0.1
    AllowOverride All
  </Directory>
</VirtualHost>

<VirtualHost 127.0.0.1:443>
  DocumentRoot "/Users/jim/Documents/Projects/site1/web"
  ServerName site1.local
  SSLEngine On
  SSLCertificateFile "/Applications/XAMPP/etc/ssl-certs/myssl.crt"
  SSLCertificateKeyFile "/Applications/XAMPP/etc/ssl-certs/myssl.key"
  SetEnvIf User-Agent ".*MSIE.*" nokeepalive ssl-unclean-shutdown
  <Directory "/Users/jim/Documents/Projects/site1">
    Order deny,allow
    Deny from All
    Allow from 127.0.0.1
    AllowOverride All
  </Directory>
</VirtualHost>

No código acima, você pode alterar os números de 1 para 2 e é a configuração do segundo site. Eles usam o mesmo certificado, e é por isso que eles estão em endereços IP diferentes.

Eu também incluí a informação NameVirtualHost no topo do arquivo:

NameVirtualHost 127.0.0.1:80
NameVirtualHost 127.0.0.2:80
NameVirtualHost 127.0.0.1:443
NameVirtualHost 127.0.0.2:443

Eu posso pingar site1.local e site2.local. Eu posso usar o telnet ( telnet site2.local 80 ) para acessar os dois sites. Mas no Safari só posso chegar ao primeiro site1.local - navegar para site2.local me dá a página principal localhost (que está incluída nos vhosts) ou me dá um acesso proibido!.

Estou certo do que fazer, qualquer sugestão seria incrível.

    
por Chealion 23.11.2009 / 04:39

3 respostas

1

E quanto a diretiva de escuta? Você deve ter Listen 127.0.0.1:443 e Listen 127.0.0.2:443 em vez de apenas Listen *:443 .

    
por 29.08.2011 / 06:57
0

Uma coisa a tentar: você pode ter mais de um host virtual usando o mesmo certificado no mesmo endereço IP, desde que você inclua esta diretiva:

NameVirtualHost 127.0.0.1:443

Veja link para um exemplo de arquivo de configuração.

    
por 23.11.2009 / 16:47
0

Eu tenho a configuração idêntica funcionando, exceto pelo meu NameVirtualHost, onde, em vez de:

NameVirtualHost 127.0.0.1:80
NameVirtualHost 127.0.0.2:80
NameVirtualHost 127.0.0.1:443
NameVirtualHost 127.0.0.2:443

Eu só tenho:

NameVirtualHost *:80

E o meu nome de servidor no vhost HTTPS inclui a porta: 443, por exemplo,

<VirtualHost 127.0.0.1:443>
  DocumentRoot "/Users/jim/Documents/Projects/site1/web"
  ServerName site1.local:443
.........

Espero que isso ajude!

    
por 27.06.2012 / 22:56