Can't Install Nginx on Linux
I've just created an Ubuntu server. I've tried to install Nginx but I've gotten error.
root@scw-eefca0:~# sudo apt-get install nginx
Reading package lists... Done
Building dependency tree
Reading state information... Done
nginx is already the newest version (1.10.0-0ubuntu0.16.04.4).
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
2 not fully installed or removed.
After this operation, 0 B of additional disk space will be used.
Do you want to continue? [Y/n] Y
Setting up nginx-core (1.10.0-0ubuntu0.16.04.4) ...
Job for nginx.service failed because the control process exited with error code. See "systemctl status nginx.service" and "journalctl -xe" for details.
invoke-rc.d: initscript nginx, action "start" failed.
dpkg: error processing package nginx-core (--configure):
subprocess installed post-installation script returned error exit status 1
dpkg: dependency problems prevent configuration of nginx:
nginx depends on nginx-core (>= 1.10.0-0ubuntu0.16.04.4) | nginx-full (>= 1.10.0-0ubuntu0.16.04.4) | nginx-light (>= 1.10.0-0ubuntu0.16.04.4) | nginx-extras (>= 1.10.0-0ubuntu0.16.04.4); however:
Package nginx-core is not configured yet.
Package nginx-full is not installed.
Package nginx-light is not installed.
Package nginx-extras is not installed.
nginx depends on nginx-core (<< 1.10.0-0ubuntu0.16.04.4.1~) | nginx-full (<< 1.10.0-0ubuntu0.16.04.4.1~) | nginx-light (<< 1.10.0-0ubuntu0.16.04.4.1~) | nginx-extras (<< 1.10.0-0ubuntu0.16.04.4.1~); however:
Package nginx-core is not configured yet.
Package nginx-full is not installed.
Package nginx-light is not installed.
Package nginx-extras is not installed.
dpkg: error processing package nginx (--configure):
dependency problems - leaving unconfigured
Errors were encountered while processing:
nginx-core
nginx
E: Sub-process /usr/bin/dpkg returned an error code (1)
Edit:
systemctl status nginx.service
output:
● nginx.service - A high performance web server and a reverse proxy server
Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled)
Active: failed (Result: exit-code) since Mon 2017-01-23 13:40:38 UTC; 10min ago
Process: 12375 ExecStartPre=/usr/sbin/nginx -t -q -g daemon on; master_process on; (code=exited, status=1/FAILURE)
Jan 23 13:40:38 scw-eefca0 systemd[1]: Starting A high performance web server and a reverse proxy server...
Jan 23 13:40:38 scw-eefca0 nginx[12375]: nginx: [emerg] socket() [::]:80 failed (97: Address family not supported by protocol)
Jan 23 13:40:38 scw-eefca0 nginx[12375]: nginx: configuration file /etc/nginx/nginx.conf test failed
Jan 23 13:40:38 scw-eefca0 systemd[1]: nginx.service: Control process exited, code=exited status=1
Jan 23 13:40:38 scw-eefca0 systemd[1]: Failed to start A high performance web server and a reverse proxy server.
Jan 23 13:40:38 scw-eefca0 systemd[1]: nginx.service: Unit entered failed state.
Jan 23 13:40:38 scw-eefca0 systemd[1]: nginx.service: Failed with result 'exit-code'.
It's a totally new server and I didn't configure anything except updating apt-get.
Solution 1:
nginx: [emerg] socket() [::]:80 failed (97: Address family not supported by protocol)
Nginx tries to start, and connect to [::]:80, but can't. Probably because IPv6 is disabled on the machine. Either enable IPv6 or change the nginx configuration. Search for this line in the config file /etc/nginx/nginx.conf
:
listen [::]:80 default_server;
and comment it out:
# listen [::]:80 default_server;
restart nginx:
systemctl nginx restart
or, if this gives error that it is not running:
systemctl nginx start
Then run the install commands again.