У меня есть Apache и Tomcat, работающий на моем сервере Debian, Apache, используя mod_jk для проксирования запросов Tomcat и обратно. Я установил Дженкинса внутри Tomcat. Настройка работала нормально, проксирование тоже работает.Прокси-сервер Apache для Tomcat через поддомен, используя mod_jk, скрывая путь в URL-адресе
Теперь у меня просто проблема с правилами переписывания (я думаю).
Что есть является: ci.<mydomain>.com/jenkins
То, что я хочу является: ci.<mydomain>.com
Я не достаточно опытен с правилами перезаписи в Apache и документации/Google не помогает я тоже (возможно, я не использую правильные ключевые слова). Так что любая помощь приветствуется.
Вот мои настройки:
Apache версии: Apache/2.2.16 (Debian)
Tomcat версии: Apache Tomcat/7.0.27
мой worker.properties
файл выглядит следующим образом:
# Define 1 real worker using ajp13
worker.list=worker1
# Set properties for worker1 (ajp13)
worker.worker1.type=ajp13
worker.worker1.host=localhost
worker.worker1.port=8009
Определение моей подобласти/виртуального хоста:
<VirtualHost *>
ServerName ci.<mydomain>.com
ServerAlias www.ci.<mydomain>.de
ErrorLog /var/log/apache2/ci_error.log
LogLevel warn
CustomLog /var/log/apache2/ci_access.log combined
JKMount /jenkins/* worker1
JKMount /jenkins worker1
RewriteEngine on
RewriteRule ^/$ /jenkins/ [R=permanent]
RewriteRule ^/jenkins/(.*)$ ajp://localhost:8009/jenkins/$1 [P]
</VirtualHost>
Дженкинс только одно приложение I хочу быть поданным Tomcat. У большинства других приложений также будет свой собственный виртуальный хост. Насколько я понял материал mod_jk, этого работника должно быть достаточно для всех моих других приложений, но, возможно, я ошибаюсь.
Как я могу получить доступ к Дженкинсу через субдомен уже, я думаю, что это (как упоминалось ранее) только вопрос правильных правил перезаписи.
Любая помощь приветствуется, и я благодарен за любой совет или намек :)
Привет, Кристофер, огромное спасибо, я боялся, что кто-то упомянет кучу головных болей за то, что я хочу. хотя я дам ваше предложение попробовать в ближайшие дни и буду поддерживать вас в курсе :) – bully
Если вы хотите запустить Jenkins на том, что кажется '/' (а не '/ jenkins'), то почему бы не просто нарисовать карту'/* 'to' worker1' и есть Jenkins - ваш ROOT webapp в Tomcat? –
Привет, Кристофер, потому что я хочу запустить больше, чем Дженкинс в tomcat. Как вы предполагаете, я хочу настроить среду разработки, и я предпочитаю субдомены по сравнению с URL-адресами, зависящими от контекста. так что будет ci.domain, wiki.domain, ... И это привело меня к этой интересной проблеме. наличие более одного экземпляра tomcat не является решением, так как, к сожалению, у моего сервера ограниченные ресурсы :( – bully