Estou tentando configurar um servidor web apache-ubuntu-php. Meu servidor da web hospedará vários sites SSL, cada site SSL terá seu próprio endereço IP (a menos que haja uma maneira melhor de fazer isso).
Então, suponho que o primeiro passo seja fazer com que o apache reconheça pelo menos dois endereços IP diferentes. No momento, tenho uma versão SSL e não SSL de um site http://mysite.com e https://mysite.com . Embora ambos estejam atualmente em execução no meu servidor, não consigo que ambos usem endereços IP diferentes. No momento, ambos estão usando o IP 1.1.1.1. Comprei um segundo endereço IP 2.2.2.2, mas o https://mysite.com não o aceita e o firefox reclama do erro "ssl_error_rx_record_too_long". Aqui está uma olhada nos meus 2 arquivos vhost
/ etc / apache2 / site-enabled / 000-default
#NameVirtualHost 1.1.1.1:80
#<VirtualHost 1.1.1.1:80>
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /var/www
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
<Directory "/usr/lib/cgi-bin">
AllowOverride None
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
Order allow,deny
Allow from all
</Directory>
ErrorLog /var/log/apache2/error.log
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn
CustomLog /var/log/apache2/access.log combined
Alias /doc/ "/usr/share/doc/"
<Directory "/usr/share/doc/">
Options Indexes MultiViews FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
Allow from 127.0.0.0/255.0.0.0 ::1/128
</Directory>
</VirtualHost>
/etc/apache2/site-enabled/mysite.com
<VirtualHost 1.1.1.1:80>
ServerAdmin [email protected]
ServerName mysite.com
ServerAlias www.mysite.com
DocumentRoot /srv/www/mysite.com/public_html/
ErrorLog /srv/www/mysite.com/logs/error.log
CustomLog /srv/www/mysite.com/logs/access.log combined
</VirtualHost>
<IfModule mod_ssl.c>
#<VirtualHost 2.2.2.2:443>
<VirtualHost *:443>
ServerAdmin [email protected]
ServerName mysite.com
ServerAlias www.mysite.com
DocumentRoot /srv/www/mysite.com/public_html/
ErrorLog /srv/www/mysite.com/logs/error.log
CustomLog /srv/www/mysite.com/logs/access.log combined
SSLEngine on
SSLCertificateFile /etc/ssl/localcerts/www.mysite.com.crt
SSLCertificateKeyFile /etc/ssl/localcerts/www.mysite.com.pem
<FilesMatch "\.(cgi|shtml|phtml|php)$">
SSLOptions +StdEnvVars
</FilesMatch>
<Directory /usr/lib/cgi-bin>
SSLOptions +StdEnvVars
</Directory>
BrowserMatch ".*MSIE.*" \
nokeepalive ssl-unclean-shutdown \
downgrade-1.0 force-response-1.0
</VirtualHost>
</IfModule>
Em mysite.com, se eu substituir <VirtualHost *: 443> por <VirtualHost 2.2.2.2:443>, o Firefox apresentará o erro "ssl_error_rx_record_too_long".
Portanto, quando tento criar e ativar um /etc/apache2/site-enabled/mysite2.com com outro certificado SSL em um terceiro endereço IP, o Apache reclama de um problema de "sobreposição".
Alguém pode me dizer como acessar meu servidor para que eu possa hospedar vários sites SSL em domínios diferentes? Quero que o certificado SSL funcione para o IE 7+, FF e Safari no sistema operacional popular, como WinXP, Vista, Win7 e OSX.
fonte
Não posso verificar no momento, então isso é apenas um palpite: os arquivos geralmente são lidos em ordem alfabética. Você pode ter mais sorte ao lê-los na ordem inversa, por exemplo, renomeie 000-default para 500-default e use 400-myhost. Não me lembro onde o apache gosta de ter o host padrão - primeiro ou último. Mas pelo que você diz (sobreposição), pode ser a última
fonte