nginx无法使用80端口(它会自动跳转到nginx的欢迎界面),其他端口可以使用

/etc/nginx/sites-enabled/mysite.conf监听80端口

server {
    listen 80;
    server_name localhost;

    location /static {
        alias /home/alps/mysite/blog/static;
    }

    location / {
        uwsgi_pass 127.0.0.1:8001;
        include     /etc/nginx/uwsgi_params;
    }
}

localhost:80它会跳转到nginx默认的界面,而不是我的django项目的欢迎界面

图片描述

我的问题


1. 结果浏览器里面访问localhost:80它会自动跳转到nginx默认的欢迎界面
2. 但是如果监听8080这些端口,localhost:8080可以跳转到正确的界面
3. 请问这是怎么回事呢?我应该如何设置?
阅读 13.5k
9 个回答

应该是被/etc/sites-enabled/default占用了吧,把里面的配置去掉或者把端口改了试试

目测, 配置文件写错地方了?

是你项目目录没有写吧,
这个参数

root /home/www
location  / {
    include     /etc/nginx/uwsgi_params;
    uwsgi_pass  127.0.0.1:8001;
    uwsgi_param UWSGI_SCRIPT    <__DJANGO_PROJECT__>.wsgi;
    uwsgi_param UWSGI_CHDIR     /<__DJANGO_HOME_DIR__>;
    index       index.html index.html;
    client_max_body_size        35M;
}

nginx有重启过吗

这个问题我以前也遇到过。。最后发现是服务器的系统自带nginx占用掉了80端口。。卸载就好。
可以这样判断:lsof -i:80
看看是哪个进程正在占用,然后kill或者卸载,再启动自己的就好

nginx.conf里面有个80的default配置,如果不用里面的默认配置,自己加域名然后改hosts访问。

怎么又是你,你弄了一个星期还没有配成功呀

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
宣传栏