我刚刚创建了一个 Ubuntu 服务器。我尝试安装 Nginx,但出现错误。
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)
编辑:
systemctl status nginx.service
输出:
● 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'.
这是一个全新的服务器,除了更新 apt-get 之外我没有配置任何东西。
答案1
nginx: [emerg] socket() [::]:80 failed (97: Address family not supported by protocol)
Nginx 尝试启动并连接到 [::]:80,但无法连接。可能是因为机器上禁用了 IPv6。启用 IPv6 或更改 nginx 配置。在配置文件中搜索此行/etc/nginx/nginx.conf
:
listen [::]:80 default_server;
并注释掉它:
# listen [::]:80 default_server;
重启nginx:
systemctl nginx restart
或者,如果出现未运行的错误:
systemctl nginx start
然后再次运行安装命令。