Django не находит файлы CSS для администраторских страниц с помощью uWSGI

Проект MPD является самым актуальным демоном удаленного соединения FreeBSD. Это обеспечивает разнообразие возможности соединения включая L2TP. Посмотрите домашнюю страницу проекта для получения дополнительной информации и документацию.

С другой стороны, можно пойти старым путем использовать преданного демона L2TP. Я нашел ссылку на паршивую статью об установке FreeBSD для соединений VPN iPhone. Это, кажется, является достаточно текущим, что это работало бы, от большинства этих более старых проектов демона L2TP отказываются в этой точке все же.

В основном Вам нужно:

  • Ядро перекомпилировано со всем материалом IPSec
  • Енот (Демон IKE) от порта ipsec-инструментов
  • Демон L2TP как xl2tpd, openl2tp, или l2tpns

Другие части/слои являются дополнительными и будут зависеть от Вашей точной ситуации.

5
задан 10 December 2013 в 21:41
2 ответа

Официальные документы по развертыванию (независимо от сервера WSGI) не охватывают обслуживание статических файлов (которые обычно управляются веб-сервером). Нужные документы находятся здесь:

https://docs.djangoproject.com/en/dev/howto/static-files/deployment/

в конечном итоге обслуживание статических файлов с uWSGI довольно просто:

http: / /uwsgi-docs.readthedocs.org/en/latest/StaticFiles.html

но если вы можете сделать это в nginx, это лучше

4
ответ дан 3 December 2019 в 01:38

У меня такая же проблема. Мой сервер nginx на Centos 7.6 не может получить доступ к статической папке по пути / home / user / app / mysyte / static / . В /var/log/nginx/error.log та же ошибка

open() "/home/user/app/mysyte/static/*.css" failed (13: Permission denied)

Для решения и понимания этой проблемы : = *

  1. запустите команду getenforce
  2. , если принудительно - cat /var/log/audit/audit.log | grep nginx

для меня строка с ошибками выглядит как

type=AVC msg=audit(1558033633.723:201): avc:  denied  { read } for  pid=7758 comm="nginx" name="responsive.css" dev="dm-0" ino=17312394 scontext=system_u:system_r:httpd_t:s0 tcontext=unconfined_u:object_r:user_home_t:s0 tclass=file permissive=0
type=SYSCALL msg=audit(1558033633.723:201): arch=c000003e syscall=2 success=no exit=-13 a0=564f710dd55d a1=800 a2=0 a3=68632f656d6f682f items=0 ppid=7757 pid=7758 auid=4294967295 uid=998 gid=996 euid=998 suid=998 fsuid=998 egid=996 sgid=996 fsgid=996 tty=(none) ses=4294967295 comm="nginx" exe="/usr/sbin/nginx" subj=system_u:system_r:httpd_t:s0 key=(null)

идентификатор копии сообщения аудита 1558033633.723: 201

  1. команда запуска grep yours_audit_id /var/log/audit/audit.log | audit2why

вывод для меня

[root@uwsgi ~]# grep 1558034479.384:221 /var/log/audit/audit.log | audit2why
type=AVC msg=audit(1558034479.384:221): avc:  denied  { read } for  pid=7758 comm="nginx" name="responsive.css" dev="dm-0" ino=17312394 scontext=system_u:system_r:httpd_t:s0 tcontext=unconfined_u:object_r:user_home_t:s0 tclass=file permissive=0

        Was caused by:
        The boolean httpd_read_user_content was set incorrectly.
        Description:
        Allow httpd to read user content

        Allow access by executing:
        # setsebool -P httpd_read_user_content 1

Итак, как вы можете увидеть здесь ответ setsebool -P httpd_read_user_content 1 , когда вы запускаете эту команду, вы видите свое статическое содержимое

1
ответ дан 3 December 2019 в 01:38

Теги

Похожие вопросы