4

Я не могу найти правильное объяснение того, как запустить Jenkins на сервере Tomcat, используя базовую HTTP-аутентификацию.Jenkins and Tomcat с использованием плагина с обратным прокси-сервером

Некоторые основные сведения:

ОС: Windows 7 64 бит
Tomcat версии: 7.0.40
Дженкинс версия: 1,516
Reverse-Proxy Auth Plugin версия: 1.0.1
Java SDK версии: 1.7.0_17
Java JRE версии: 7
Испытано с Chrome и IE

в настоящее время я Дженкинс и успешно работает на моем Tomc на сервере с включенным плагином Reverse-Proxy Auth (https://wiki.jenkins-ci.org/display/JENKINS/Reverse+Proxy+Auth+Plugin) пользователь и роль добавлены в tomcat-users.xml, а несколько строк добавлены ко мне web.xml. Оба из них показаны ниже. (Оба файла находятся в C:/Program Files/Apache Software Foundation/Tomcat 7.0/conf/)

-users.xml кот (все по умолчанию, за исключением добавления одной роли и одного пользователя)

<role rolename="Administrator"/> 
<user username="John" password="password" roles="Administrator"/> 

web.xml (все по умолчанию, кроме того из этого раздела)

<security-constraint> 
<web-resource-collection> 
    <web-resource-name> 
    Jenkins 
    </web-resource-name> 
    <url-pattern>/jenkins/*</url-pattern> 
    <http-method>GET</http-method> 
    <http-method>POST</http-method> 
    </web-resource-collection> 
    <auth-constraint> 
     <role-name>Administrator</role-name> 
    </auth-constraint> 
</security-constraint> 
<!-- Define the Login Configuration for this Application --> 
<login-config> 
    <auth-method>BASIC</auth-method> 
</login-config> 

Я не знаю, почему, но всякий раз, когда я иду в http://localhost:8080 или http://localhost:8080/jenkins нет Войти проворный, но если я Ĉ введите <url-pattern>/jenkins/*</url-pattern> в <url-pattern>/*</url-pattern>. Я получаю приглашение для входа в систему, просто перейдя в http://localhost:8080, и это нормально. После того, как я войду в систему, если я перейду к/jenkins, я получаю информацию на странице входа, которая все «перепутана» [ни один из ресурсов не отображается, и страница выглядит сломанной].

Это то, что он выглядит следующим образом:

Broken Jenkins

Вот ссылка, которую я нашел, что близко к тому же вопросу у меня возникли. https://groups.google.com/forum/?fromgroups#!topic/jenkinsci-users/AVTklGHmzkc

Любая помощь будет оценена!

EDIT 1
Добавлены версии Java в случае, если нужен/отношение

EDIT 2
Добавлена ​​картина того, что Дженкинс выглядит, когда он «сломал»

UPDATE 1
По-прежнему получая те же проблемы, попробовал разные комбинации вещей в файле web.xml, но по-прежнему получал ту же проблему ,

UPDATE 2
No Fix нашел, но я делал все возможное, чтобы обойти его.Я установил url-шаблон в /*, войдите в Tomcat, остановите сервер, измените его на /jenkins/* (что, я считаю, ничего не делает) и снова запустите сервер, а затем перейдите на страницу Jenkins, чтобы получить аутентифицированные HTTP-заголовки. Тем не менее желающих решить мою проблему, но до сих пор найти один ...

+0

Я бы избавился от tomcat. У меня было это раньше, и он работает намного лучше, чем сервис без tomcat. – uncletall

ответ

1

Вот проблемы, которые я смог обнаружить:

  1. Вам не нужно обратного прокси-Auth плагин, если вы не планируете используйте Apache или какой-либо другой веб-сервер в качестве обратного прокси.
  2. Там должно быть

    <security-role> 
        <role-name>Administrator</role-name> 
    </security-role> 
    

    элемент после элемента <login-config>

  3. C:/Program Files/Apache Software Foundation/Tomcat 7.0/conf/web.xml конфигурация для сервлетов Tomcat «по умолчанию», который используется для обслуживания статических активов. Добавление ограничения безопасности на этот сервлет приводит к тому, что все статические активы становятся недоступными, что приводит к заполнению вашего экрана входа мертвыми ссылками.

Вместо этого добавьте ограничение безопасности для C:/Program Files/Apache Software Foundation/Tomcat 7.0/webapps/jenkins/WEB-INF/web.xml

Это должно просто работать, но и дополнительные изменения в C:/Program Files/Apache Software Foundation/Tomcat 7.0/conf/server.xml может потребоваться настроить область. См. Tomcat doc related to this.

+0

Хорошо, спасибо, я полупрошел это в этот момент. Я просто пошел с использованием Дженкинса самостоятельно, а не через Tomcat, у меня было много проблем с этим. Спасибо за ответ, хотя, я дам вам ответ, так как считаю, что это решит проблему нехватки ресурсов. –

Смежные вопросы