好的,问题如下所示:
所以基本上我需要为www.example.com,wwww.example2.com以及一些开发用户user1.example.com和user2.example2.com提供子域名。 除此之外,www.example.com也将需要使用端口443。
我已经看到了很多build议,并没有一个似乎有效。 也许我只需要在这里填写的空白,实际上会工作?
Listen ??? NameVirtualHost ??? <VirtualHost ???> DocumentRoot /home/user1/example.com ServerName user1.example.com ErrorLog logs/user1.example.com-error_log CustomLog logs/user1.example.com-access_log common from all <Directory "/home/user1/example.com/public"> AllowOverride All Order allow,deny Allow from all </Directory> </VirtualHost> <VirtualHost ???> DocumentRoot /home/user2/example.com ServerName user2.example.com ErrorLog logs/user2.example.com-error_log CustomLog logs/user2.example.com-access_log common from all <Directory "/home/user2/example.com/public"> AllowOverride All Order allow,deny Allow from all </Directory> </VirtualHost> <VirtualHost ???> DocumentRoot /home/www/example.com ServerName www.example.com ErrorLog logs/www.example.com-error_log CustomLog logs/www.example.com-access_log common from all <Directory "/home/www/example.com/public"> AllowOverride All Order allow,deny Allow from all </Directory> </VirtualHost> # Entry for 443 <VirtualHost 67.23.39.254:443> SSLEngine on SSLProtocol all -SSLv2 SSLCipherSuite ALL:!ADH:!EXPORT:!SSLv2:RC4+RSA:+HIGH:+MEDIUM SSLCertificateFile /etc/httpd/conf/ssl/example/www.example.com.crt SSLCertificateKeyFile /etc/httpd/conf/ssl/example/example.key SSLCertificateChainFile /etc/httpd/conf/ssl/example/gd_bundle.crt SetEnvIf User-Agent ".*MSIE.*" nokeepalive ssl-unclean-shutdown DocumentRoot /home/www/example.com ServerName www.example.com </VirtualHost>
然后对example2.com同样的事情。 Example2.com可能使用与example.com不同的ssl证书,我知道它可能需要第二个IP地址,但也许有人可以build议。
可能easys的方式是使用*作为虚拟主机的IP,例如:
Listen 80 Listen 443 NameVirtualHost *:80 <VirtualHost *:80> ServerName user1.example.com # config for user1.example.com here as in your config... </VirtualHost> # repeat lines above as many times as you need # For SSL: <VirtualHost 123.123.123.123:443> .... </VirtualHost>