Кажется, я не могу правильно настроить обратный прокси-сервер для моего Jenkins с IIS.
Все работает правильно, но я не могу заставить это сообщение исчезнуть! Запуск «administratorMonitor / hudson.diagnosis.ReverseProxySetupMonitor / testForReverseProxySetup» не возвращает 200 .. но на самом деле 404.
Я также использую плагин Blue Ocean, я заметил, что при запуске конвейеров при доступе к Jenkins через мой обратный прокси, я не вижу обновления в реальном времени !! Я копался в этом и обнаружил, что обычно это из-за плохой настройки Revery Proxy. Если я получаю доступ к jenkins через localhost, я вижу живые обновления Blue Ocean Pipeline, поэтому что-то должно быть неправильно настроено!
Что я получил :
- Windows Сервер 2019 Datacenter
- IIS 10
У меня настроен HTTPS, поэтому моя цель: Go на jenkins.example.com, он будет перенаправлен на https://jenkins.example.com, который, в свою очередь, является загрузчиком обратного прокси-сервера jenkins.
My web.config:
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<rewrite>
<rules useOriginalURLEncoding="false">
<!-- Enforces redirection of all HTTP traffic to HTTPS -->
<rule name="Enforce HTTPS" stopProcessing="true">
<match url="(.*)" />
<conditions>
<add input="{HTTPS}" pattern="off" />
</conditions>
<action type="Redirect" url="https://{HTTP_HOST}/{R:1}" redirectType="Permanent" />
</rule>
<rule name="ReverseProxyToLocalJenkinsRule" stopProcessing="true">
<match url="(.*)" />
<conditions>
<add input="{HTTPS}" pattern="on" />
</conditions>
<action type="Rewrite" url="http://jenkins.example.com:7070/{R:1}" />
<serverVariables>
<set name="X-Forwarded-Proto" value="https" />
<set name="X-Forwarded-Port" value="443" />
<set name="X-Forwarded-Host" value="{HTTP_HOST}" />
</serverVariables>
</rule>
</rules>
</rewrite>
<security>
<requestFiltering allowDoubleEscaping="true" />
</security>
</system.webServer>
<system.web>
<httpRuntime maxUrlLength="4096" />
</system.web>
</configuration>
Это лучший рабочий обратный прокси-сервер I может получить, следующие уроки jenkins обычно приводят меня к проблемам входа в систему (URL удваивается, например: example.com/https://example.com)
Ps, это последний windows образ сервера там и есть чистая базовая сборка.
Я пробежал много учебников, но ничего не решило эту проблему, любые советы очень ценятся.
Я также хочу отметить, что у меня есть один сервер с установленным Jenkins и IIS Jenkins доступен на локальном сервере 7070 на сервере. Я также отредактировал мой файл hosts на сервере:
127.0.0.1 jenkins.example.com
Где jenkins.example.com - это действительный поддомен / домен, указывающий на publi c IP моего сервера.
Поэтому, когда я пингую: jenkins.domain.com на сервере локально ... он возвращает 127.0.0.1. Если я пинг за пределами этого сервера, т.е. на моем P C я получаю c IP.
РЕДАКТИРОВАТЬ:
У меня есть запрос на маршрутизацию приложения Установлен и ниже мой конфиг: