Derzeit gibt es zwei Serviceanwendungsadressen:
192.168.5.20:5080 jenkins
192.168.5.20:2080 gitlab
Ich möchte den Nginx-Reverse-Proxy auf 192.168.0.161 (einem anderen Computer) bereitstellen und zwei Standorte konfigurieren, die jeweils auf die beiden oben genannten Adressen verweisen, aber es tritt immer ein 404-Fehler auf.
Die folgende Konfiguration:
Phänomene:
Beim Zugriff auf: 192.168.5.161/jenkins über den Browser:
Die Adressleiste des Browsers ändert sich zu: 192.168.5.161/login?from=%2F
Die Seite zeigt 404 an
Zweck:
Beim Zugriff auf 192.168.5.161/jenkins bleibt die Browser-URL-Adresse unverändert und die Seite wird an 192.168.5.20:5080 weitergeleitet, den Dienst, in dem sich Jenkins befindet. Wie ändere ich die Konfiguration?
如果你的 Jenkins / GitLab 不支持配置成在 URL 路径里加个东西的话,那么不要再这样尝试了。nginx 可以做到重定向重写,但是网页里还可能会有绝对路径的链接。就算你把网页都重写了,网页还是可能通过 JavaScript 构造成错误的链接。
你可以配置两个域名(vhosts),分别用来提供不同的服务。