nginx терпит неудачу, в то время как веб-сайт как-то все еще работает - PullRequest
0 голосов
/ 26 марта 2020

Описание

  • Я создал свой проект Django3, gunicorn, nginx, Ubuntu 18.04, Digital Ocean, основанный на этом руководстве . У меня была только одна проблема, что он не показывает CSS и все другие файлы stati c, такие как изображения. Раньше в течение всего руководства nginx давали правильные ответы, как сказано в руководстве, а также в настоящее время сайт html все еще в сети и работает
  • . Чтобы решить эту проблему, я пытался использовать этот другой руководство , чтобы мои stati c файлы отображались на моем сайте. Я выполнил все шаги, которые рекомендовал создатель, но на

Что я пробовал

  • После каждого следующего шага [1.2.3 ...] команды Я выполнил следующие команды для refre sh:

    • python3 manage.py collectstatic
    • sudo nginx -t && sudo systemctl restart nginx
    • sudo systemctl restart gunicorn
  • 1.RUN: sudo ln -s /etc/nginx/sites-available/ch-project /etc/nginx/sites-enabled

  • 1.RESULT: ln: failed to create symbolic link '/etc/nginx/sites-enabled/ch-project': File exists

  • 2.RUN: /etc/nginx/sites-enabled/my-project

  • 2.RESULT: -bash: /etc/nginx/sites-enabled/my-project: Permission denied

  • 3.RUN: systemctl status nginx.service

  • 3. РЕЗУЛЬТАТ:
● 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 Thu 2020-03-26 13:27:08 UTC; 13s ago
     Docs: man:nginx(8)
  Process: 11111 ExecStop=/sbin/start-stop-daemon --quiet --stop --retry QUIT/5 --pidfile /run/nginx.pid (code=exited, status=0/SUCCESS)
  Process: 11111 ExecStartPre=/usr/sbin/nginx -t -q -g daemon on; master_process on; (code=exited, status=1/FAILURE)
 Main PID: 11111 (code=exited, status=0/SUCCESS)
  • 4.RUN: sudo nginx -t
  • 4.РЕСУЛЬТ:
nginx: [emerg] open() "/etc/nginx/sites-enabled/myproject" failed (2: No such file or directory) in /etc/nginx/nginx.conf:62
nginx: configuration file /etc/nginx/nginx.conf test failed
  • Nginex должен быть в порядке, иначе html на сайте загружается и работает отлично. В этом посте переполнение стека говорится, что я, возможно, должен что-то сделать с безопасностью nginx.conf, но в этом случае они говорят о сайте worldpres, поэтому я не знаю, как реализовать это здесь.
  • Я пробовал это переполнение стека ответ поста ранее, ниже ответ содержит подпост для дальнейшей настройки RUN: sudo nginx -c /etc/nginx/sites-enabled/default -t
  • 6.RESULT:
nginx: [emerg] "server" directive is not allowed here in /etc/nginx/sites-enabled/default:21
nginx: configuration file /etc/nginx/sites-enabled/default test failed

1 Ответ

1 голос
/ 26 марта 2020

Файлы stati c по-прежнему не загружаются, но nginx была исправлена ​​с помощью следующих команд:

  • удаление случайно созданного файла myproject из /etc/nginx/sites-enabled/myproject, имя которого находится в официальное руководство, но the_actual_myproject имеет другое имя RUN:
cd /etc/nginx/sites-enabled
sudo rm myproject
  • RUN:
namei -l /run/gunicorn.sock
sudo systemctl restart gunicorn
sudo systemctl daemon-reload
sudo systemctl restart gunicorn.socket gunicorn.service
sudo nginx -t && sudo systemctl restart nginx
  • РЕЗУЛЬТАТ:
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
  • RUN: 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: active (running) since Thu 2020-03-26 16:32:09 UTC; 7min ago
     Docs: man:nginx(8)
  Process: 11111 ExecStart=/usr/sbin/nginx -g daemon on; master_process on; (code=exited, sta
  Process: 11111 ExecStartPre=/usr/sbin/nginx -t -q -g daemon on; master_process on; (code=ex
 Main PID: 11111 (nginx)
    Tasks: 2 (limit: 1152)
   CGroup: /system.slice/nginx.service
...