Repository navigation
What is the difference between the Stirling Docker variant via browser and the desktop variant? #8644
Replies: 2 comments
|
What's different. The browser version is just the web UI your server serves, so every request goes through Chrome/Edge/Safari's own network stack. The desktop app is a Tauri app with its own bundled backend (a JRE plus the Stirling jar, used for the "local tools") and can optionally connect to your server. Its requests to your server don't go through the webview's network stack. They go through Tauri's Rust HTTP client ( Most likely cause: Nginx sends an incomplete certificate chain. "Works in the browser, desktop app says unreachable" is the classic sign of this. Browsers quietly download a missing intermediate certificate (AIA fetching) and cache intermediates they've seen before. rustls does neither. In the current code (cd48ccb), the desktop app checks certificates in three different ways:
So a chain that a browser accepts can still make the desktop app call your server offline. Check it from the Ubuntu box (OpenSSL doesn't fetch missing intermediates either, so it behaves like the desktop app): openssl s_client -connect your.host:443 -servername your.host </dev/null 2>/dev/null \
| grep -E '^ *[0-9] s:|^Verify return code'
curl -sS https://your.host/api/v1/info/status
If the chain is fine, the Disclosure: I build a hosted HTML-to-PDF API (not linked here, not related to this problem). I traced this through the Stirling-PDF source with an AI assistant (Claude Code) and ran the certificate-chain test before posting. |
|
Thank you for the detailed answer. I use ACME with the DNS-01 challenge to provide a valid certificate for the Nginx proxy. It is a Let's Encrypt certificate. The Stirling server itself is only accessible within the internal network, but it has a subdomain (pdf..com) assigned to it. My clients access the server via this subdomain since I modified the hosts file accordingly.
did i miss something in the nginx config? `server { } server { }` |
Uh oh!
There was an error while loading. Please reload this page.
Hello,
I've been using Stirling PDF for a while now as a Docker variant on an Ubuntu server with Nginx as a reverse proxy.
Although it's only available internally, I'm using it with a valid SSL certificate.
My problem is that I cannot log in via the Stirling Desktop variant on either Windows 11 or macOS. I always get an error message stating that the server is unreachable.
However, everything works fine via the browser. So now I'm wondering, what is actually the difference between the Docker version and the Desktop version?
Or is it even more efficient for individuals to use the desktop version?
Alternatively, I would also appreciate tips on how to find the error so that I can log in to my Stirling Docker version using the desktop variant.
All reactions