Port auf URL umleiten

milymat

Benutzer
Mitglied seit
28. Apr 2017
Beiträge
19
Punkte für Reaktionen
1
Punkte
3
Hallo zusammen,

ich würde gerne einen Link von NextCloud ins Internetfreigeben, dabei für ich gerne nur diesen Link freigeben ohne die ganze Next Cloud Instanz.

Mein Plan:
in der Fritzbox die Portfreigabe von 443 auf 456 der Synology weiterleiten, das hab ich schon geschafft.
In der Synology per Reverse Proxy von 456 (https) auf 8080 (http) weiterleiten, das hab ich auch geschafft.
Ich würde aber gerne von https://synology.local:456 auf https://synology.local:8080/s/alks4VSD weiterleiten und zwar so dass ich über https://<EXTERNEIP> direkt auf https://synology.local:8080/s/alks4VSD lande.

Kann mir jmd. einen Tipp geben wie ich das hinbekomme?
 

Penthys

Benutzer
Mitglied seit
04. Jun 2020
Beiträge
250
Punkte für Reaktionen
53
Punkte
34
Das geht nicht mit der GUI, aber man kann den Proxy auch selber einrichten. Dazu legt man eine Datei im unter dem Pfad /etc/nginx/sites-enabled mit einem beliebigen Namen an und trägt da seinen eigene Proxy mit mehr Möglichkeiten ein:


NGINX:
server {
    listen 456 ssl http2;
    server_name <deine.externe.domain>;

    location / {
        proxy_set_header        Host                $http_host;
        proxy_set_header        X-Real-IP           $remote_addr;
        proxy_set_header        X-Forwarded-For     $proxy_add_x_forwarded_for;
        proxy_set_header        X-Forwarded-Proto   $scheme;
        proxy_set_header        Upgrade             $http_upgrade;
        proxy_set_header        Connection          $connection_upgrade;
        proxy_intercept_errors  on;
        proxy_http_version      1.1;

        proxy_pass http://localhost:8080/alks4VSD/;
    }
}

Danach die Konfiguration mit
Bash:
sudo nginx -t
testen und wenn die es keine Fehler mit dem Proxy gibt mit
Bash:
sudo nginx -s reload
scharf schalten. Vorher den alten Proxy in der GUI entfernen, damit es keine Konflikte gibt.
 

milymat

Benutzer
Mitglied seit
28. Apr 2017
Beiträge
19
Punkte für Reaktionen
1
Punkte
3
Super vielen Dank, die Webseite läd. Aber Sachen wie CSS und JS werden nicht geladen. Es kommt nur plain HTML
 

Penthys

Benutzer
Mitglied seit
04. Jun 2020
Beiträge
250
Punkte für Reaktionen
53
Punkte
34
Ich bin kein Webentwickler, aber ich vermute, dadurch das man jetzt in einem Subfolder startet und nicht beim webroot, stimmen einige Pfade nicht mehr. Wenn z.B. CSS in /css gesucht wird, aber durch das Starten in /s/alks4VSD werden sie jetzt eigentlich in /s/alks4VSD/css werwartet, das so nicht existiert, geht es natürlich nicht. Eventuell könnte man für CSS und JS die Pfade per rewrite anpassen. Möglichwerweise gibt es elegantere Lösungen. Dafür müsste ich jetzt auch erst das Web befragen...
 

Adama

Benutzer
Sehr erfahren
Maintainer
Mitglied seit
05. Mrz 2013
Beiträge
1.979
Punkte für Reaktionen
576
Punkte
134
Das ist meine Konfiguration für den location-Teil auf meinem nginx-Proxy auf meinem Raspi, vielleicht hilft dir das weiter:
Code:
    location ^~ / {
        rewrite ^(/.*)$ $1 break;
        proxy_set_header Host $http_host;
        proxy_set_header X-Forwarded-Proto $scheme;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_redirect off;
        proxy_read_timeout 120;
        proxy_connect_timeout 10;
        proxy_pass http://zielip:port/;
        access_log /var/log/nginx/nextcloud.access.log;
        error_log /var/log/nginx/nextcloud.error.log;
    }
        # Well known Nextcloud
        location ^~ /.well-known {
        location = /.well-known/carddav     { return 301 https://nextcloud.meine-domain.de:port/remote.php/dav/; }
        location = /.well-known/caldav      { return 301 https://nextcloud.meine-domain.de:port/remote.php/dav/; }
        location ^~ /.well-known            { return 301 https://nextcloud.meine-domain.de:port/index.php$uri; }
        try_files $uri $uri/ =404;
    }

Die funktioniert mit Nextcloud einwandfrei. Läuft bei mir aber im Docker...
 


 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat