Nginx reverse proxy configuration for OnlyOffice

I am here: Configure Nginx for OnlyOffice.

But after then I receive a 502 Bad Gateway from Nginx when I call: http://seafile.mydomain.tld/onlyofficeds/welcome.

I can call onlyoffice at: http://seafile.mydomain.tld:88/welcome.

What’s the problem with nginx configuration? For test cases I work with HTTP, to not have certificates.

I’m having the same issue. Like you I followed the instructions outlined in the link. http://<my.domain.tld>:88/welcome/ works but request to https://<my.domain.tld>/onlyofficeds/web-apps/apps/api/documents/api.js fails with 502 bad gateway.

I also did the test example from the welcome page:

... sudo supervisorctl start ds:example

The test works fine also.

To me it feels like the instruction is missing a step or something or it’s out of date. Did you ever find a solution to this issue?

okay I think I found the issue for me. In this section of my /opt/seafile-data/nginx/conf/seafile.nginx.conf

location /onlyofficeds/ {

        # THIS ONE IS IMPORTANT ! - Trailing slash !
        proxy_pass http://{your Seafile server's domain or IP}:88/;

        proxy_http_version 1.1;
        client_max_body_size 100M; # Limit Document size to 100MB
...

I used http://127.0.0.1:88 for proxy_pass which is wrong because it would refer to the localhost within the context of docker container of seafile. Of course there is no onlyoffice running within seafile container. The fix was simple, I had to use the actually domain url of the machine or it’s public ip reachable from outside.

I was wondering why I got this wrong and then it occurred to me. In this completed example, OnlyOffice Integration - Seafile Admin Manual

it showed

    #
    # onlyofficeds
    #
    location /onlyofficeds/ {
        # IMPORTANT ! - Trailing slash !
        proxy_pass http://127.0.0.1:88/;
        ...

It doesn’t look right to me especially if Seafile is setup using docker. This is going to be a catcha for new users trying to set this up. I suggest modifying this to something less error prone.