Skip to content

Add warning when websocket is not functionnal #59

@murlock

Description

@murlock

Description

I've deployed ideon as self hosted service and I though I lost data on upgrade (despite backup, restore it, ...)
After digging (and come back to my laptop), I was surprised to retrieve my data!

In fact, my data was stored locally in browser, awaiting to be pushed to server

WHAT I DO

  1. Go to a project
  2. Click on create several Blocks
  3. Upload File
  4. Go to other PC or browser: project is empty

WHAT I SEE

I can see Synced status but can see these logs in Firefox console:

GET wss://XXXX/yjs/project-a1f53895-b836-4c98-a242-6e93e58df0a9
NS_ERROR_WEBSOCKET_CONNECTION_REFUSED

WHAT I SHOULD SEE

  • An explicit error on synced to exhibit the issue
  • A documentation page regarding Reverse Proxy

Environment

  • OS: Linux Ubuntu 24.04
  • Browser: Firefox 148
  • Deployment Method: Docker behind a nginx as reverse proxy

My old nginx config

server {
    server_name                   XXX;

    add_header Strict-Transport-Security max-age=15768000;

    # forward all request to memos
    location / {
        proxy_pass   http://localhost:8085;

        sendfile off;

        proxy_set_header Host $host;
        proxy_set_header X-Forwarded-Ssl on;
        proxy_set_header X-Real-IP  $remote_addr;
        proxy_set_header X-Forwarded-For  $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Port 443;
        proxy_max_temp_file_size 0;

        client_max_body_size       10m;
        client_body_buffer_size    128k;

        proxy_connect_timeout      90;
        proxy_send_timeout         90;
        proxy_read_timeout         90;

        proxy_buffer_size          4k;
        proxy_buffers              4 32k;
        proxy_busy_buffers_size    64k;
        proxy_temp_file_write_size 64k;
    }

    listen 443 ssl;
}

And the missing line inside

proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";

Metadata

Metadata

Assignees

Labels

bugSomething isn't workingdocumentationImprovements or additions to documentationgood first issueGood for newcomers

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions