Recently checked the logs of my ownCloud instance to see why the updater did not find the latest release. This yielded the following error messages:
get_headers(https://apps.owncloud.com/updater.php?version=8...): failed to open stream: operation failed at /htdocs/lib/private/httphelper.php#149
get_headers(): Failed to enable crypto at /htdocs/lib/private/httphelper.php#149
get_headers(): SSL: Success at /htdocs/lib/private/httphelper.php#149
Long story short, it turned out the chroot my PHP-FPM workers run in was
missing a /dev/urandom
device node. Without this, get_headers()
is
not able to initialize crypto stuff for HTTPS.
$ mknod /path/to/chroot/dev/urandom c 1 9
Credits go to this post . Although I don't understand a single word Russian, instructions were pretty clear.
I keep the chroots as minimal as possible, using nscd for name resolution to avoid runtime libraries that would require maintenance. A bit too minimal, in this case.