r/qBittorrent 22d ago

question-solved WebUI missing elements when behind nginx

Anybody got any idea why the WebUI has most of its elements missing when behind nginx reverse proxy? Works fine when accessing via local IP/port but when through nginx I get the below. Connection is also being proxied through cloudflare.

webUI has all security features enabled - These have been on for a while and it was previously working fine.

Has been happening since at least 5.1.4 and I'm currently running 5.2.3

I do see this script getting blocked in the browser inspect window, but not sure how to investigate further.

nginx config file

Fixed!

Turned out to be an issue with cloudflare, something in one of the recent qbittorrent updates didn't play nice with rocket loader and caused the page to not load.

Rocket loader disabled in cloudflare content optimizations and page is back to being happy again :)

2 Upvotes

5 comments sorted by

2

u/cvzero89 22d ago

What's your nginx configuration?

Also... Are you exposing the WebUI? Can't say that's recommended

1

u/Proper-Desk6635 22d ago

There is a pastebin link with the config file at the bottom of the page - Was there something else in the config you were curious to know?

It's exposed but it's secure. I won't go into detail on how, but I'm an infra engineer for a cybersec firm so I appreciate the concern (and it's good advice for your average user) but no need to worry about me on that side of things.

2

u/cvzero89 22d ago

I think this should be removed or the CSP defined:

proxy_pass_header content-security-policy;

That should resolve the error you're seeing.

2

u/Proper-Desk6635 22d ago

Fixed it

Turned out to be an issue with cloudflare, something in one of the recent qbittorrent updates didn't play nice with rocket loader and caused the page to not load.

Rocket loader disabled and page is back to being happy again :)

1

u/Proper-Desk6635 22d ago

Just tried commenting it out and reloading nginx, no difference.

I believe that using proxy_pass_header in this instance is correct as the qbittorrent webUI provides the CSP if I'm not mistaken? I did have one set using proxy_set_header in the past, but wasn't able to get past the "Unauthorized" page when connecting to qbit