systemctl start nginx 没有执行任何操作

systemctl start nginx 没有执行任何操作

如果我执行 systemctl start nginx,它只会转到下一个空行,而不让服务器工作,如下所示:

[[/home/sc/pro]]# systemctl start nginx
[[/home/sc/pro]]#

如果我执行 nginx -t:

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

如果我执行 netstat -ntlp,我会看到以下内容:

N      1684/nginx: master
tcp6       0      0 :::465                  :::*                    LISTE

在/etc/nginx/nginx.conf中:

server{
        listen 80;
        #listen [::]:80 ipv6only=on; <- I tried it too
        server_name "my_ip_address";

        location = /favicon.ico {access_log off; log_not_found off;}
        location /static/ {
                root /home/sc/pro/projects/sc/sc_site;
        }

        location / {
                proxy_set_header Host $http_host;
                proxy_set_header X-Real-IP $remote_addr;
                proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
                proxy_set_header X-Forwarded-Proto $scheme;
                proxy_pass http://unix:/home/sc/pro/sc_project/sc_project.sock;
        }
    }

此外,如果我执行以下命令,系统会告诉我以下内容:

(sc_project) [ [/home/sc/pro/projects/sc]]# gunicorn --bind 0.0.0.0:8000 sc.wsgi:application
[2020-09-08 14:05:16 +0000] [4209] [INFO] Starting gunicorn 20.0.4
[2020-09-08 14:05:16 +0000] [4209] [INFO] Listening at: http://0.0.0.0:8000 (4209)
[2020-09-08 14:05:16 +0000] [4209] [INFO] Using worker: sync
[2020-09-08 14:05:16 +0000] [4211] [INFO] Booting worker with pid: 4211

但是无论如何我都无法访问我的网站...尽管之前我刚安装 gunicorn 并执行此命令时我就能访问该网站...

我使用以下命令终止了 httpd 进程:

sudo kill -2 <PID>

... 占用了 80 端口... 我之前尝试过使用 apache,但是没有用... 现在我不确定它是 httpd 还是 http 进程,也不知道我是否需要它... 但是通过 journalctl -x 它不允许 gunicorn 使用 80 端口...

另外我不确定我是否正确地做了限制:我是我的网站的根...我为 sc 使用了这些命令,它是我的项目的根文件夹(如:/home/sc)并且应该是一个用户的名称,它保存了树下的所有项目:usermod -a -G sc nginx chmod 710 /home/sc

我正在关注这个教程:https://www.digitalocean.com/community/tutorials/how-to-set-up-django-with-postgres-nginx-and-gunicorn-on-centos-7

答案1

您已将 nginx 配置为尝试通过 UNIX 套接字连接到 gunicorn,但您将 gunicorn 配置为监听 TCP 端口 8080。因此它们无法通信。您必须更改其中一个配置以使它们匹配。

相关内容