Окружающая обстановка:
- Начинающий пользователь (это я) по всем указанным пунктам
- CentOS 6.4 x86_64
- OpenJDK 1.7.0_65
- Apache httpd 2.2.15 + mod_ssl 2.2.15 — действует как прокси, используя mod_proxy_ajp, никакого другого веб-приложения
- Jenkins 1.562 — работает только на порту ajp 8009, без веб-префикса
Я могу получить доступ к URL-адресу https://host/
и вижу пользовательский интерфейс jenkins. [Я не добавлял AllowEncodedSlashes NoDecode
, ProxyRequests Off
или nocanon
, но, похоже, это работает... но для их значения я буду искать/задавать другой вопрос.]
Это единственная строка, которую я добавил к /etc/httpd/conf.d/ssl.conf
(непосредственно перед </VirtualHost>
, которая соответствует <VirtualHost _default_:443>
):
ProxyPass / ajp://localhost:8009/
У меня сложилось впечатление, что выход на Дженкинса с Apache httpd будет означать
- Собственные двоичные файлы (вместо байт-кода Java) для обработки частей удаленного подключения.
- Возможность обслуживать статический контент (изображения, артефакты сборки, журналы консоли) без нагрузки на серверный процесс Jenkins.
Если это понимание правильное, я ищу правила конфигурации Apache httpd, которые позволят Apache httpd обслуживать статический контент из Jenkins. Я уже пробовал:
ProxyPass /static !
С участием
DocumentRoot "/var/cache/jenkins/war"
Но это ведет на необычную страницу (трудно идентифицировать как Дженкинс... Я не проверял ссылки). Когда я включил журнал доступа для Jenkins (через /etc/sysconfig/jenkins
), появились такие записи (только выдержки, скопированные ниже):
/static/6a3788e2/scripts/yui
/static/6a3788e2/css/
/adjuncts/6a3788e2/lib/layout/breadcrumbs.css
Когда служба Jenkins перезапускается, появляется другой текст. Как настроить Apache httpd для отправки статического контента?
Я также пробовал размещать jenkins.war на tomcat (пакет tomcat6, развернутый через yum) на порту HTTP-коннектора по умолчанию 8080 (т.е. без mod_proxy_ajp). Каждый раз, когда я перезапускаю tomcat, элемент URL после static
отличается.
PS: недостаточно кредитов для создания тега mod_proxy_ajp, используя вместо него mod_proxy. Тем не менее, я могу предложить награду в 50 кредитов. Пожалуйста, проголосуйте за вопрос, если вы считаете, что к этому были приложены искренние усилия.
/static
? Кажется, это было бы проще, чем заставить Apache обслуживать статический контент из развернутого каталога WAR. - person John R   schedule 11.09.2014