I’ve had reverse proxying working for quite a while, but noticed that it recently stopped. I’m unsure if something changed in my NGINX config, but I’d like to see if anybody sees something I don’t.
I’m running duplicacy web 1.8.3 on Linux on an x64 based server. I use NGINX to terminate TLS on port 3443 and reverse proxy to the HTTP port 3875 that Duplicacy is running on. When I navigate to :3443, I get the expected password prompt, login with the correct password and frequently get redirected back to the login page. If I manually navigate to the dashboard page on the TLS port, it loads properly. When navigating to other pages it seems to be somewhat random whether or not I successfully get there or am redirected to a password prompt. Again, if I manually type the path I frequently get directed to the correct page.
When viewing the schedule page, because it constantly polls for updates, I see the following in the duplicacy_web log file
2025/05/03 02:12:53 127.0.0.1:52700 POST /get_schedule_status administration token not provided
This is the message I see when I’m unable to navigate to any of the pages, so it’s just that the schedule page polls for updates that makes this easily reproducible and repeats once per second. This error also means that performing tasks like restores or setting up new storage endpoints fails because I receive an “iill-formed server response” error in the web UI.
When navigating to the HTTP port, none of this happens. Everything works as expected.
Looking at the browser console, I see these errors repeating somewhat frequently, as well as
Source map error: Error: request failed with status 404
Stack in the worker:networkRequest@resource://devtools/client/shared/source-map-loader/utils/network-request.js:43:9Resource URL: https://server-fqdn:3443/assets/js/jquery.min.js
Source Map URL: jquery.min.map
When navigating to the assets path I’m absolutely able to access that file and any other file listed as an asset in the console.
I have added exceptions in my adblock configuration, as well as my firefox cookies exception settings. I’ve checked my NGINX config and it’s very simple so I can’t imagine that’s causing the issue unless maybe it’s not passing a necessary header or something?
server {
server_name server-fqdn;
location / {
proxy_pass http://localhost:3875;
proxy_buffering off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
allow [IPv4 Subnet];
allow [IPv6 Subnet];
allow ::1/128;
allow 127.0.0.0/8;
}
listen [::]:3443 ssl;
listen 3443 ssl;
ssl_certificate /etc/letsencrypt/live/server-fqdn/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/server-fqdn/privkey.pem;
include /etc/letsencrypt/options-ssl-nginx.conf;
ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem;
}
Any ideas would be appreciated here. At this point basically every browser UI is making it increasingly painful to use HTTP with a password entry form, and since I already have letsencrypt set up for this host I really don’t want to deal with Duplicacy trying to request a cert of its own on my behalf.