Currently, I've set up a nextcloud server with nginx
and I enabled it with sudo systemctl enable nginx.service
. When I'm rebooting, than I'm getting an error message which complains about a proxy server and if I take a look into sudo systemctl status nginx.service
, than I'm getting this:
nginx.service - A high performance web server and a reverse proxy server
Loaded: loaded (/etc/systemd/system/nginx.service; enabled; vendor preset: disabled)
Active: failed (Result: exit-code) since Sat 2020-11-14 12:20:55 CET; 16min ago
Nov 14 12:20:55 TORNAX-ARCH systemd[1]: Starting A high performance web server and a reverse proxy server...
Nov 14 12:20:55 TORNAX-ARCH nginx[473]: 2020/11/14 12:20:55 [warn] 473#473: could not build optimal types_hash, you should increase either types_hash_max_size: 1024 or types_hash_bucket_si>
Nov 14 12:20:55 TORNAX-ARCH nginx[473]: 2020/11/14 12:20:55 [emerg] 473#473: bind() to 192.168.178.35:443 failed (99: Unknown error)
Nov 14 12:20:55 TORNAX-ARCH systemd[1]: nginx.service: Control process exited, code=exited, status=1/FAILURE
Nov 14 12:20:55 TORNAX-ARCH systemd[1]: nginx.service: Failed with result 'exit-code'.
Nov 14 12:20:55 TORNAX-ARCH systemd[1]: Failed to start A high performance web server and a reverse proxy server.
If I run nginx -t
than I'm getting this:
2020/11/14 12:37:40 [warn] 68391#68391: could not build optimal types_hash, you should increase either types_hash_max_size: 1024 or types_hash_bucket_size: 64; ignoring types_hash_bucket_size
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
2020/11/14 12:37:40 [emerg] 68391#68391: open() "/run/nginx.pid" failed (13: Permission denied)
nginx: configuration file /etc/nginx/nginx.conf test failed
When I'm looking for a solution about this open() "/run/nginx.pid" failed (13: Permission denied)
error, than I'm only getting solutions for docker + nginx like these posts:
- https://stackoverflow.com/questions/57427162/nginx-emerg-open-var-run-nginx-pid-failed-13-permission-denied
- https://stackoverflow.com/questions/64393237/nginx-emerg-open-run-nginx-pid-failed-13-permission-denied
- https://dockerquestions.com/2020/10/16/nginx-emerg-open-run-nginx-pid-failed-13-permission-denied/
- https://github.com/Wonderfall/dockerfiles/issues/40
It works after restarting manually the service with sudo systemctl restart nginx.service
but I'm still getting the open() "/run/nginx.pid" failed (13: Permission denied)
when I'm running nginx -t
.
What am I doing wrong or what can I do in order to solve this problem?
sudo nginx -t
This comment should have been an answer imo.
Run nginx -t as root. This is a red herring. – Michael Hampton Nov 15 at 0:27
It may be a bug. "This behavior is a known bug, caused by a race condition between nginx and systemd. Systemd is expecting the PID file to be populated before nginx had the time to create it." https://www.cloudinsidr.com/content/heres-fix-nginx-error-failed-read-pid-file-linux/