IscanderChe
Ақп. 28, 2021, 11:47 Т.Ж.

Не отдаётся статика на виртуальной машине

Добрый день.

Конфигурация системы:
- VirtualBox 6.1.18;
- Ubuntu Server 20.04.02 LTS;
- Django 3.1.6;
- Gunicorn;
- Nginx.

Проблема: при запуске тестового сервера:

  1. python manage.py runserver

статика отдаётся нормально.
При запуске же сервера на виртуальной машине статика не отдаётся.

settings.py:

  1. ...
  2.  
  3. DEBUG = False
  4.  
  5. RUNSERVER = False
  6. ...
  7.  
  8. if RUNSERVER:
  9. STATICFILES_DIRS = [
  10. BASE_DIR / "static",
  11. ]
  12. elif not RUNSERVER and DEBUG:
  13. STATICFILES_DIRS = [
  14. BASE_DIR / "static",
  15. ]
  16. else:
  17. STATIC_ROOT = os.path.join(BASE_DIR, 'static')

/etc/nginx/sites-available/default

  1. server {
  2. listen 80;
  3. server_name host_ip;
  4. access_log /var/log/nginx/example.log;
  5.  
  6. location /static/ {
  7. alias /home/username/.env/mysite/static/;
  8. expires 30d;
  9. }
  10.  
  11. location / {
  12. include proxy_params;
  13. proxy_pass http://unix:run/gunicorn.sock;
  14. }
  15. }

Где я накосячил?

2

Ол саған ұнайды ма? Әлеуметтік желілерде бөлісіңіз!

4
Илья Чичак
  • Ақп. 28, 2021, 5:16 Т.Қ.

а где у вас статика находится?
после

  1. manage.py collecttatic

найдите папку, где она, сделайте в ней

  1. pwd

и путь укажите в nginx конфиге

    IscanderChe
    • Ақп. 28, 2021, 8:19 Т.Қ.

    Так и сделано, собственно:

    1. /home/username/.env/mysite/static/
      IscanderChe
      • Наурыз 1, 2021, 11:05 Т.Қ.

      Похоже на то, что права на папку static в Ubuntu надо правильно выставить. Пытаюсь разобраться, но пока без толку...

        IscanderChe
        • Наурыз 3, 2021, 5:03 Т.Қ.

        В итоге выставил 775 на все файлы проекта и всё заработало. Но я не уверен, что так правильно.

          Пікірлер

          Тек рұқсаты бар пайдаланушылар ғана пікір қалдыра алады.
          Кіріңіз немесе Тіркеліңіз