Vraag


Acties:
  • 0 Henk 'm!

  • switchboy
  • Registratie: September 2002
  • Laatst online: 18-05 13:59

switchboy

-ruimte te huur-

Topicstarter
Mijn vraag
Ik wilde mijn al bestaande nextcloud met onlyoffice intergratie welke ik tot nu toe aan een subdomein had hangen met een self signed cert eindelijk eens goed doen. En via een NGINX reverse proxy met netjes lets encrypt certificaat aan het internet verbinden. Met een werkende onlyoffice intergratie.

Ik heb na heel veel pijn en moeite _eindelijk_ nextcloud werkend zonder in een eindeloze redirect loop terecht te komen. Nu was het de beurt om ook onlyoffice met de buitenwereld te verbinden.

Huidige config script:

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
server {
  listen 80;    server_name nextcloud.gamesdust.nl;
    server_tokens off;

    location /.well-known/acme-challenge/ {
        root /var/www/certbot;
    }

    location / {
        return 301 https://$host$request_uri;
    }
}

server {
    listen 443 ssl;
    server_name nextcloud.gamesdust.nl;
    server_tokens off;

    ssl_certificate /etc/letsencrypt/live/nextcloud.gamesdust.nl/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/nextcloud.gamesdust.nl/privkey.pe$
    include /etc/letsencrypt/options-ssl-nginx.conf;
    ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem;

    location /nextcloud/ {
       rewrite ^/nextcloud.gamesdust.nl/nextcloud(.*) $1 break;
        proxy_pass https://192.168.1.29:4430/;
        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;
    }

    location /onlyoffice/ {
     rewrite ^/nextcloud.gamesdust.nl/onlyoffice(.*) $1 break;
        proxy_pass https://192.168.1.29:4431/;
        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;


    }
}


Uitkomst
nextcloud werkt
onlyoffice geeft een 404 dus de proxy werkt niet. Op https://192.168.1.29:4431/ krijg ik wel netjes te zien dat de onlyoffice server draait.


Relevante software en hardware die ik gebruik
- OpenMediaVault met Docker via OMV extentions
- nginx:latest
- ghcr.io/linuxserver/nextcloud
- onlyoffice/documentserver:latest

Waar ik over twijfel is of dit de juiste manier is om twee reverse proxies in te stellen. Ik heb het liefst alles onder hetzelfde subdomein hangen zodat ik met één certificaat toekom. Vandaar de /nextcloud en /onlyoffice

My Steam Profile (Name Switch) Worth: 889€ (225€ with sales)Games owned: 83

Beste antwoord (via switchboy op 04-07-2021 09:18)


  • Krypt
  • Registratie: April 2000
  • Laatst online: 06-05 23:58
Zal, als ik het niet vergeet, morgen eens kijken.
Ik heb onlyoffice ook als subfolder draaien met nextcloud (subdomain) op nginx/letsencrypt container (swag).

Edit. Ik heb geen rewrites nodig overigens. Misschien omdat ik het in containers draai?

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
server {
    listen 443 ssl;
    listen [::]:443 ssl;

    server_name nextcloud.*;

    include /config/nginx/ssl.conf;

    client_max_body_size 0;

    location / {
        include /config/nginx/proxy.conf;
        resolver 127.0.0.11 valid=30s;
        set $upstream_app nextcloud;
        set $upstream_port 443;
        set $upstream_proto https;
        proxy_pass $upstream_proto://$upstream_app:$upstream_port;

        proxy_max_temp_file_size 8192m;
        add_header Strict-Transport-Security "max-age=31536000; includeSubDomains" always;
    }
    
    location /onlyofficeds/ {
        proxy_pass https://OnlyOfficeDocumentServer:443/;
        #proxy_set_header Connection $proxy_connection;
        proxy_set_header X-Forwarded-Host $host/onlyofficeds;
        proxy_set_header X-Forwarded-Proto $scheme;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        #proxy_http_version 1.1;
    }
}


Dat is de mijne. Ik had issues met het laten werken en bleek aan t gebruik van backslashes te liggen.
Ik heb dus een x-forwarded-host met de subfolder erin staan

[ Voor 79% gewijzigd door Krypt op 04-07-2021 01:29 ]

Pvouput live

Alle reacties


Acties:
  • 0 Henk 'm!

  • Oon
  • Registratie: Juni 2019
  • Niet online

Oon

Zo te zien is het probleem dat je naar /welcome geredirect wordt door OnlyOffice. Dat is logisch, want je probeert subdirectories te gebruiken, en veel software stuurt je wanneer je niet ingelogd bent terug naar de homepagina die geen rekening houdt met de subdirectory waarop je binnenkomt.

De enige juiste optie lijkt mij om twee subdomeinen te gebruiken. Je kan met de -d parameter in certbot gewoon de tweede subdomein aan hetzelfde certificaat toevoegen (evt. met --expand de eerste keer), of gewoon twee certificaten gebruiken, ze zijn toch gratis.

Acties:
  • Beste antwoord
  • +1 Henk 'm!

  • Krypt
  • Registratie: April 2000
  • Laatst online: 06-05 23:58
Zal, als ik het niet vergeet, morgen eens kijken.
Ik heb onlyoffice ook als subfolder draaien met nextcloud (subdomain) op nginx/letsencrypt container (swag).

Edit. Ik heb geen rewrites nodig overigens. Misschien omdat ik het in containers draai?

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
server {
    listen 443 ssl;
    listen [::]:443 ssl;

    server_name nextcloud.*;

    include /config/nginx/ssl.conf;

    client_max_body_size 0;

    location / {
        include /config/nginx/proxy.conf;
        resolver 127.0.0.11 valid=30s;
        set $upstream_app nextcloud;
        set $upstream_port 443;
        set $upstream_proto https;
        proxy_pass $upstream_proto://$upstream_app:$upstream_port;

        proxy_max_temp_file_size 8192m;
        add_header Strict-Transport-Security "max-age=31536000; includeSubDomains" always;
    }
    
    location /onlyofficeds/ {
        proxy_pass https://OnlyOfficeDocumentServer:443/;
        #proxy_set_header Connection $proxy_connection;
        proxy_set_header X-Forwarded-Host $host/onlyofficeds;
        proxy_set_header X-Forwarded-Proto $scheme;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        #proxy_http_version 1.1;
    }
}


Dat is de mijne. Ik had issues met het laten werken en bleek aan t gebruik van backslashes te liggen.
Ik heb dus een x-forwarded-host met de subfolder erin staan

[ Voor 79% gewijzigd door Krypt op 04-07-2021 01:29 ]

Pvouput live


Acties:
  • +1 Henk 'm!

  • switchboy
  • Registratie: September 2002
  • Laatst online: 18-05 13:59

switchboy

-ruimte te huur-

Topicstarter
De x-forward-host met subfolder bleek de oplossing. Het werkt nu en is verbindbaar vanuit Nextcloud.

Achteraf vrij suf, maar dat komt ervan als je er in de kleine uurtjes er nog aan zit. Dat was achteraf ook waarschijnlijk het orginele Nextcloud redirect hell probleem wat ik met die rewrite had opgelost. Ach soms zit het mee en soms zit het tegen als je als Pippi Langkous "ik heb het nog nooit gedaan dus gaat vast lukken" te werk gaat.

Bedankt!

My Steam Profile (Name Switch) Worth: 889€ (225€ with sales)Games owned: 83


Acties:
  • 0 Henk 'm!

  • Krypt
  • Registratie: April 2000
  • Laatst online: 06-05 23:58
@switchboy fijn dat het werkt. Ik heb ook een tijd lopen klooien; het is niet echt heel duidelijk beschreven inderdaad. Als subdomain wel, maar niet als folder.

En leuk motto; die hanteer ik ook. Voordeel is wel dat je dan ook wel leert hoe dingen niet werken. En dat is, met een deductie instelling, ook heel goed om je analytisch vermogen te trainen ;)
Dus het heeft altijd voordeel, ook al is het niet altijd direct zichtbaar :D

Ps. Schijnt geen Pipi uitspraak te zijn #mandelaeffect

[ Voor 6% gewijzigd door Krypt op 04-07-2021 10:45 ]

Pvouput live