Обратный прокси Jenkins на IIS

введите здесь описание изображения Я настраиваю обратный прокси для jenkins в IIS 10. Я получаю 500 - Внутренняя ошибка сервера. Ошибка модуля перезаписи URL. и Jekins показывает сообщение «Похоже, что ваш обратный прокси-сервер не работает». Я добавил правила для входящего и исходящего трафика с «localhost», IP-адресом, а также с именем хоста. Мне нужно настроить что-то еще, относящееся к IIS?


person Ashok Krishnamoorthy    schedule 13.09.2017    source источник
comment
Не могли бы вы добавить информацию из web.config, как вы его настраивали   -  person Victor Leontyev    schedule 13.09.2017
comment
Я добавил картинку выше с деталями web.config   -  person Ashok Krishnamoorthy    schedule 13.09.2017
comment
В чем смысл InboundRule 2 и 3, если каждый раз будет выполняться только 1?   -  person Victor Leontyev    schedule 13.09.2017


Ответы (1)


У меня также есть сообщение «Похоже, что ваш обратный прокси-сервер не работает», но все работает нормально (т.е. я могу получить доступ к своему экземпляру Jenkins с другого компьютера без каких-либо проблем).

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

Префикс пути

В jenkins.xml я указал префикс, который хочу иметь для своего экземпляра Jenkins:

  <arguments>-Xrs -Xmx256m -Dhudson.lifecycle=hudson.lifecycle.WindowsServiceLifecycle -jar "%BASE%\jenkins.war" --httpPort=8080 --webroot="%BASE%\war" --prefix=/jenkins</arguments>

Конфигурация IIS

web.config для веб-сайта, который следует использовать в качестве обратного прокси, выглядит следующим образом:

<configuration>
    <system.webServer>
        <rewrite>
            <rules>
                <rule name="ReverseProxyInboundRule1" stopProcessing="true">
                    <match url="(jenkins.*)" />
                    <action type="Rewrite" url="http://localhost:8080/{R:1}" />
                </rule>
            </rules>
        </rewrite>
    </system.webServer>
</configuration>

Предполагается, что Jenkins работает на своем порту по умолчанию: 8080.

Не уверен, но я думаю, что Configure -> Jenkins location -> Jenkins URL должен указывать на что-то вроде http://your_host_name/jenkins.

Конечно, привязки веб-сайта должны включать ваше имя хоста для доступа к Jenkins с другой машины.

person Alexei - check Codidact    schedule 03.01.2019