我正在尝试使用 sudo apt-get install nginx
更新 nginx ,但它给了我一条与端口 80 被占用相关的错误消息。当我跑
sudo netstat -tlnp | grep 80
我得到
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 6845/nginx
tcp 0 0 127.0.0.1:8080 0.0.0.0:* LISTEN 1919/config.ru
tcp 0 0 0.0.0.0:8060 0.0.0.0:* LISTEN 6845/nginx
虽然我无法从
--help
函数中轻松理解每一列的含义,但我认为在这个例子中 6845
是 nginx
的进程 ID。如果我尝试使用杀死它sudo kill 6845
并再次运行
sudo netstat -tlnp | grep 80
,我明白了tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 10130/nginx
tcp 0 0 127.0.0.1:8080 0.0.0.0:* LISTEN 1919/config.ru
tcp 0 0 0.0.0.0:8060 0.0.0.0:* LISTEN 10130/nginx
换句话说,
nginx
似乎立即开始在不同的进程 ID 下再次监听端口 80。如何阻止 nginx
运行? (我也试过 sudo systemctl stop nginx
但无济于事)。 最佳答案
您需要 明确 为 listen
中的每个 server
块定义 /etc/nginx/nginx.conf
参数而不是 80,否则 nginx 将 默认使用端口 80。
另外,调整 /etc/nginx/conf.d/default.conf
中的配置。