Рекомендуемые практики для управления httpd.conf для разных сред
У нас есть несколько разных сред (Developer Dekstop, Integration, QA, Prod), которые должны иметь несколько разные варианты одного и того же файла httpd.conf. Например, файл httpd.conf настраивает, чтобы httpd действовал как обратный прокси-сервер и передавал определенные URL-адреса для Jetty, но имя хоста экземпляра Jetty отличается в каждой среде.
Есть ли рекомендуемая практика для устранения различий такого рода? Я просмотрел документацию по apache для файла httpd.conf и не увидел ничего, что делает то, что мне нужно.
1 ответ
Разделите уникальные разделы на отдельные файлы, затем используйте Include
директивы в основном http.conf для включения других конфигурационных файлов. Вы можете, например, обернуть эти Включения в IfDefine
разделы, а затем использовать -D
опция запуска командной строки, чтобы определить переменные для включения или выключения различных разделов конфигурации:
<IfDefine DEVELOPER>
Include developer.conf
</IfDefine>
а потом:
apachectl start -D DEVELOPER
Мне удобнее использовать включенные файлы conf, но, конечно, вы можете поместить всю свою конфигурацию в один файл внутри ifdefs.
Бонусные баллы за автоматизацию всего этого с помощью инструмента управления конфигурациями, такого как cfengine или puppet, конечно.