У меня есть сайт, который позволяет просматривать как ssl, так и без ssl.
У меня есть два виртуальных хоста, настроенных в Apache для обработки двух сценариев, то есть:
<VirtualHost *:80>
...
</VirtualHost>
и
<IfModule mod_ssl.c>
<VirtualHost *:443>
...
</VirtualHost>
</IfModule>
Теперь меня раздражает то, что (довольно большая) конфигурация дублируется в обоих vhosts (единственная разница - добавленные параметры SSL в ssl-vhost), поэтому, когда я хочу что-то изменить, мне нужно сделать это в обоих. Он также выглядит и выглядит неряшливо.
Есть ли способ объединить две конфигурации?
Большое спасибо.
Да, это необходимо, как упомянул @Hex в своем комментарии.
Однако вы можете воспользоваться ярлыком и использовать Include
директиву, чтобы общая конфигурация не была избыточной, например:
<VirtualHost _default_:80>
...
include conf/common_rule.conf
</VirtualHost>
<VirtualHost _default_:443>
... #SSL rules
include conf/common_rule.conf
</VirtualHost>
Украдено из похожего вопроса «Должен ли я дублировать директивы Virtualhost для портов 80 и 443?».