NGINX Reverse Proxy und Wordpress mit 2 Domains

truetone

Ensign
Registriert
März 2021
Beiträge
199
Hallo,

ich hoffe mir kann jemand bei einem kleinen Problem weiterhelfen.

Wir haben einmal unser Intranet (IP: 10.10.10.33) im lokalen Netz stehen. Dies wird aufgerufen über die interne Adresse https://intranet.kkhpb.local/

Wir haben nun eine App, die aus dem Intranet bestimmte Dinge laden muss. Dazu habe ich in unserer DMZ einen NGINX als Reverse Proxy konfiguriert (IP: 175.23.44.191) und erlaubt, dass dieser Server per 443 auf das Intranet zugreifen darf. Die externe Domain dazu lautet https://app.unternehmen.de:8456

Meine Nginx Config dazu sieht nun wie folgt aus:
Code:
server {
    listen 8456 ssl;
    server_name app.unternehmen.de;

    ssl_certificate /etc/ssl/certs/wildcard.crt;
    ssl_certificate_key /etc/ssl/private/wildcard.key;

    location / {
        proxy_pass https://intranet.kkhpb.local/;
        proxy_set_header X-Forwarded-Host $server_name;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
        proxy_cache off;
        add_header 'Cache-Control' 'no-store, no-cache, must-revalidate, proxy-revalidate, max-age=0';
        expires off;
    }
}

Wenn ich nun unsere externe Domain aufrufe, wird mir das Intranet angezeigt, welches auf Wordpress basiert. Leider wird das Design nicht geladen. Das liegt daran, dass er intern mit der Domain https://intranet.kkhpb.local arbeitet. Ich kann in der wp-config.inc.php nun angeben, dass er eine andere Domain anhand des X-Forwarded-Host nutzen soll. Dann wird alles sauber angezeigt und geladen.

Halte ich die Maus auf einen Link, wir auch der Link richtig erkannt mit https://app.unternehmen.de:8456 aber sobald ich darauf klicke, leitet er wieder um auf die interne Adresse.

WIESO?

Hat da jemand eine Idee, wie ich das richtig umsetzen kann?
Das Intranet soll nachher natürlich nicht frei im Intranet hängen, dazu kommen im Reverse Proxy noch weitere Einstellungen bzgl Token und so hinzu. Der Einfachheit halber habe ich das weg gelassen.

Ist das hier ein Problem des NGINX oder eher Wordpress? Oder mache ich etwas falsch?

DANKE!
 
  • Gefällt mir
Reaktionen: TechFA
Du musst auch in der Datenbank von Wordpress die URLs ändern.
 
  • Gefällt mir
Reaktionen: TechFA
Habe es geschafft, Wordpress macht immer einen eigenen Redirect.

Man kann in der functions.php des eignene Themens den folgenden Code hinzufügen zum Deaktivieren:
Code:
remove_filter('template_redirect','redirect_canonical');

Trotzdem danke! :)
Ergänzung ()

Helge01 schrieb:
Du musst auch in der Datenbank von Wordpress die URLs ändern.
Ja, aber die alte soll ja weiterhin gehen. Intern sollen die Leute die interne Domain weiterhin aufrufen (können die auch nur, da die externe da absichtlich nicht geroutet wird).
 
  • Gefällt mir
Reaktionen: TechFA
Zurück
Oben