What does it actually do? When it’s on, I get a redirecting error when trying to connect to my nextcloud at cloud.example.com, but with it off, it seems like I can’t connect to NC using http anyway? Am I misunderstanding what it does?
Thanks!
What does it actually do? When it’s on, I get a redirecting error when trying to connect to my nextcloud at cloud.example.com, but with it off, it seems like I can’t connect to NC using http anyway? Am I misunderstanding what it does?
Thanks!
“Force SSL” forces your browser to redirect http://example.com to https://example.com, it doesn’t “force” SSL into the connection. As long as you’re connecting through HTTPS, the traffic is encrypted.
If your browser redirects you from http to https after you turn off Force SSL, there could be two things going on, both related to caching:
You can check both of these by clearing your browser cache for example.com (or in general).
Thanks for the reply, yeah that’s what I thought it was meant to do, sorry for the confusion
Do you have any idea why setting it on would lead to “this page isn’t redirecting properly” in firefox?
Usually it’s due to the webapp not knowing that the request is actually already served under https by the reverse proxy, it think the request is still served over http so it issues a redirect to https, which leads to a redirect loop.
Alright that makes sense, do you know how to solve that if that webapp is nextcloud aio?
I just remember nextcloud has
trusted_proxies
option located inconfig/config.php
file. Not configuring it (or configured it wrong) can cause nextcloud to not trust theHTTP_X_FORWARDED_PROTO
header it received (it assumed to be spoofed).https://docs.nextcloud.com/server/latest/admin_manual/configuration_server/reverse_proxy_configuration.html
I’m not sure what happened in your setup, but here is how https handling should works:
HTTP_X_FORWARDED_PROTO
header to let the upstream server know that even though the request is over http, the end user actually served over https so it should assume the connection as httpsI think this chain is broken somewhere in your setup and cause nextcloud to not receive the
HTTP_X_FORWARDED_PROTO
header from nginx proxy.