Назад | Перейти на главную страницу

Нужна помощь с apache2 httpd.conf

Хорошо, проблема представлена ​​так:

Так что в основном мне нужно разместить www.example.com, wwww.example2.com, а также поддомены для пары пользователей-разработчиков user1.example.com и user2.example2.com. Вдобавок к этому www.example.com также должен будет использовать порт 443.

Я видел много предложений, но ни один из них не работал. Может, мне просто нужно заполнить здесь пробелы, которые действительно будут работать?

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 может использовать другой сертификат ssl, чем example.com, который, как я знаю, вероятно, потребует второй IP-адрес, но, возможно, кто-то здесь может посоветовать.

Наверное, проще всего будет использовать * в качестве 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>