Managed to spin up Opencloud on my NAS. I put a host entry in NPM and it seems to be working. From external internet I can log in and upload files with no issues. But whenever I try to reach it through local IP and port, page loads but stays completely blank.
Googling didn’t give reasonable leads. Has anyone had similar issue that they’ve fixed?
Look into NAT hairpinning on your router/firewall and see if you can use the external ip. :)
Is it similar to say Local DNS records? Cause I’ve tried to set it up and a few services worked. I could ping domain name and get local IP in return.
But at some point everything stopped working and none of domains would return with any IP. I am yet to figure out why. I suspect that I was probably got banned by fail2ban, even tho I have checked jails and local IPs were not on the list.
Kinda the opposite, NAT Hairpinning allows you to use the external domain and public IP from the inside.
https://docs.opnsense.org/manual/how-tos/nat_reflection.html#reflection-and-hairpin-nat
Acronyms, initialisms, abbreviations, contractions, and other phrases which expand to something larger, that I’ve seen in this thread:
Fewer Letters More Letters DNS Domain Name Service/System HTTP Hypertext Transfer Protocol, the Web IP Internet Protocol NAT Network Address Translation SSL Secure Sockets Layer, for transparent encryption VPN Virtual Private Network
[Thread #262 for this comm, first seen 29th Apr 2026, 13:40] [FAQ] [Full list] [Contact] [Source code]
What is the status code of that page? Is it actually an empty response, or does it just look blank in a browser?
When you access it from the internet, do you use an ip and port or a domain name? My first guess is that you entered the domain name somewhere in the config of either Opencloud or a reverse proxy, and the mismatch (between the expected domain name and the ip address used instead) is what causes trouble.
I set it to my domain.
If i type oc.mydomain.com, page loads. If I type 192.168.1.99:9200, page seems to load at an instant but is clear white. No error codes. Browser detects that page has no SSL certificate. SSL cert should not be the issue as any other service I run across all devices including this one does work without a cert. It is just this one doesn’t
So you get an http 200? What’s in the log?
Opencloud log:
{“level”:“info”,“service”:“proxy”,“proto”:“HTTP/1.1”,“request-id”:“8a3e3843-6d22-4caf-b676-24d990dcf4da”,“traceid”:“b2b46d4e445e2323954409b31d19851d”,“remote-addr”:“work ip address”,“method”:“PROPFIND”,“status”:207,“path”:“/remote.php/dav/spaces/a0ebc43e-12ce-4f1f-951e-3f2ba80564ab$0f1e2f93-c7a7-4ecb-b825-d47abee250f2”,“duration”:279.156444,“bytes”:1493,“time”:“2026-04-29T12:26:55Z”,“line”:“github.com/opencloud-eu/opencloud/services/proxy/pkg/middleware/accesslog.go:34",“message”:"access-log”} {“level”:“info”,“service”:“storage-system”,“host.name”:“9199dd415038”,“pkg”:“rgrpc”,“traceid”:“8f52659d44e2253f431fbed3ba8b1dc5”,“time”:“2026-04-29T12:27:13Z”,“line”:“github.com/opencloud-eu/reva/v2@v2.42.6/internal/grpc/services/authprovider/authprovider.go:146",“message”:"user idp:"internal" opaque_id:"247cdd12-e7b8-44cb-86c4-912aa681a567" type:USER_TYPE_SERVICE authenticated”} {“level”:“info”,“service”:“storage-system”,“host.name”:“9199dd415038”,“pkg”:“rgrpc”,“traceid”:“8551e2dbf6821aea868ef1ca67c751ad”,“time”:“2026-04-29T12:28:12Z”,“line”:“github.com/opencloud-eu/reva/v2@v2.42.6/internal/grpc/services/authprovider/authprovider.go:146",“message”:"user idp:"internal" opaque_id:"247cdd12-e7b8-44cb-86c4-912aa681a567" type:USER_TYPE_SERVICE authenticated”} {“level”:“info”,“service”:“storage-system”,“host.name”:“9199dd415038”,“pkg”:“rgrpc”,“traceid”:“9ba91e889774d1cf61f196f4cf23a92a”,“time”:“2026-04-29T12:29:13Z”,“line”:“github.com/opencloud-eu/reva/v2@v2.42.6/internal/grpc/services/authprovider/authprovider.go:146",“message”:"user idp:"internal" opaque_id:"247cdd12-e7b8-44cb-86c4-912aa681a567" type:USER_TYPE_SERVICE authenticated”} {“level”:“info”,“service”:“storage-system”,“host.name”:“9199dd415038”,“pkg”:“rgrpc”,“traceid”:“bf9181c41b2f6166cd4e381bc1964a6c”,“time”:“2026-04-29T12:30:12Z”,“line”:“github.com/opencloud-eu/reva/v2@v2.42.6/internal/grpc/services/authprovider/authprovider.go:146",“message”:"user idp:"internal" opaque_id:"247cdd12-e7b8-44cb-86c4-912aa681a567" type:USER_TYPE_SERVICE authenticated”} {“level”:“info”,“service”:“storage-system”,“host.name”:“9199dd415038”,“pkg”:“rgrpc”,“traceid”:“59d0e3b7e8b39a4743460025410f90df”,“time”:“2026-04-29T12:31:13Z”,“line”:“github.com/opencloud-eu/reva/v2@v2.42.6/internal/grpc/services/authprovider/authprovider.go:146",“message”:"user idp:"internal" opaque_id:"247cdd12-e7b8-44cb-86c4-912aa681a567" type:USER_TYPE_SERVICE authenticated”} {“level”:“info”,“service”:“storage-system”,“host.name”:“9199dd415038”,“pkg”:“rgrpc”,“traceid”:“ac52c23e67bcaab083b839f62bea8551”,“time”:“2026-04-29T12:32:12Z”,“line”:“github.com/opencloud-eu/reva/v2@v2.42.6/internal/grpc/services/authprovider/authprovider.go:146",“message”:"user idp:"internal" opaque_id:"247cdd12-e7b8-44cb-86c4-912aa681a567" type:USER_TYPE_SERVICE authenticated”} {“level”:“info”,“service”:“storage-system”,“host.name”:“9199dd415038”,“pkg”:“rgrpc”,“traceid”:“d1216cc65676a0926f325b65ffa22142”,“time”:“2026-04-29T12:33:13Z”,“line”:“github.com/opencloud-eu/reva/v2@v2.42.6/internal/grpc/services/authprovider/authprovider.go:146",“message”:"user idp:"internal" opaque_id:"247cdd12-e7b8-44cb-86c4-912aa681a567" type:USER_TYPE_SERVICE authenticated”} {“level”:“info”,“service”:“storage-system”,“host.name”:“9199dd415038”,“pkg”:“rgrpc”,“traceid”:“a0c39b7d1f090ee4598ed316afce2600”,“time”:“2026-04-29T12:34:12Z”,“line”:“github.com/opencloud-eu/reva/v2@v2.42.6/internal/grpc/services/authprovider/authprovider.go:146",“message”:"user idp:"internal" opaque_id:"247cdd12-e7b8-44cb-86c4-912aa681a567" type:USER_TYPE_SERVICE authenticated”} {“level”:“info”,“service”:“storage-system”,“host.name”:“9199dd415038”,“pkg”:“rgrpc”,“traceid”:“c082ff54a4708083426693887ccecd94”,“time”:“2026-04-29T12:35:13Z”,“line”:“github.com/opencloud-eu/reva/v2@v2.42.6/internal/grpc/services/authprovider/authprovider.go:146",“message”:"user idp:"internal" opaque_id:"247cdd12-e7b8-44cb-86c4-912aa681a567" type:USER_TYPE_SERVICE authenticated”} {“level”:“info”,“service”:“storage-system”,“host.name”:“9199dd415038”,“pkg”:“rgrpc”,“traceid”:“a8c72111ea61af5460c290fe647860a8”,“time”:“2026-04-29T12:36:12Z”,“line”:“github.com/opencloud-eu/reva/v2@v2.42.6/internal/grpc/services/authprovider/authprovider.go:146",“message”:"user idp:"internal" opaque_id:"247cdd12-e7b8-44cb-86c4-912aa681a567" type:USER_TYPE_SERVICE authenticated”} {“level”:“info”,“service”:“proxy”,“proto”:“HTTP/1.1”,“request-id”:“9199dd415038/I4snGgoCQT-000929”,“traceid”:“c493de4bfc8b093b7e420da33aa7786e”,“remote-addr”:“home ip address”,“method”:“GET”,“status”:200,“path”:“/”,“duration”:620.462889,“bytes”:7679,“time”:“2026-04-29T12:36:37Z”,“line”:“github.com/opencloud-eu/opencloud/services/proxy/pkg/middleware/accesslog.go:34",“message”:"access-log”} {“level”:“info”,“service”:“storage-system”,“host.name”:“9199dd415038”,“pkg”:“rgrpc”,“traceid”:“6d61a88b754f7642166fd4f116fdb879”,“time”:“2026-04-29T12:37:13Z”,“line”:“github.com/opencloud-eu/reva/v2@v2.42.6/internal/grpc/services/authprovider/authprovider.go:146",“message”:"user idp:"internal" opaque_id:"247cdd12-e7b8-44cb-86c4-912aa681a567" type:USER_TYPE_SERVICE authenticated”}
“GET”,“status”:200
I guess 200 then. No idea what that means to be fair.
Check OC_CORS_ALLOW_ORIGINS and WEB_CORS_ALLOW_ORIGINS
Openconfig.phpand look for the entry namedtrusted_domains. Make sure it contains both the domain name and the local IP address:'trusted_domains' => array( 0 => 'nextcloud.your.domain', // the public FQDN 1 => '172.22.?.?', // the local IP address 2 => '...', // other addresses, like if you're using a VPN ),If the web app is opened using an address or DNS name that isn’t included in this list, the browser will connect, but the app will refuse to work.Nevermind, I completely overlooked that the service is Opencloud, not Nextcloud. Nevertheless, you should investigate whether Opencloud has an equivalent config variable.
Rip me then. I am struggling to find anything. Most links forward to owncloud.
Where do I find config.php? Initially I haven’t set a config directory in .env that should result in config stored in a docker volume. I have explored docker volume and found no such file. Docker compose folder also has none.


