Я пытаюсь использовать Django + Apache + WSGI для Windows.Django/Apache/Mod_WSGI - Ошибка HTTP 404 со статическими файлами
Я использую стек Bitnami так, чтобы он заботился об установке Apache. Я смог поместить Django Project на Django, однако он загружает веб-страницу без каких-либо статических файлов (css, js). Так я открыл журналы Apache и все статические файлы отображаются как 404.
Это мой HTTPD-app.conf:
<Directory "E:/Bitnami/djangostack-1.6.7-1/apps/django/django_projects/Dashboard_Web/Dashboard_Web">
Options +MultiViews
AllowOverride All
<IfVersion <2.3>
Order allow,deny
Allow from all
</IfVersion>
<IfVersion >= 2.3>
Require all granted
Options All
</IfVersion>
Options +ExecCGI
WSGIApplicationGroup %{GLOBAL}
<IfVersion <2.3>
Order allow,deny
Allow from all
</IfVersion>
<IfVersion >= 2.3>
Require all granted
Options All
</IfVersion>
Options All
AllowOverride All
Options Indexes FollowSymLinks
Options +ExecCGI
</Directory>
Alias /static/ 'E:/Bitnami/djangostack-1.6.7-1/apache2/static/'
<Directory 'E:/Bitnami/djangostack-1.6.7-1/apache2/static'>
<IfVersion <2.3>
Order allow,deny
Allow from all
</IfVersion>
<IfVersion >= 2.3>
Require all granted
Options All
</IfVersion>
Require all granted
Options All
AllowOverride All
Options Indexes FollowSymLinks
</Directory>
<Directory />
Require all granted
</Directory>
WSGIScriptAlias /Dashboard_Web 'E:/Bitnami/djangostack-1.6.7-1/apps/django/django_projects/Dashboard_Web/Dashboard_Web/wsgi.py'
Это мой settings.py:
STATIC_URL = '/static/'
STATIC_ROOT = "E:/Bitnami/djangostack-1.6.7-1/apache2/static/"
для статических файлов, я использовал python manage.py collectstatic
и он будет генерировать все статические файлы "E:/Bitnami/djangostack-1.6.7-1/apache2/static/
», так что я могу автоматизировать его с Fabric
(так что не нужно обновлять статические файлы, введя python manage.py collectstatic
себя).
Псевдоним, похоже, указывает на нужную папку, поскольку он доступен для поиска в Проводнике Windows. Поэтому я не знаю, почему это происходит, может ли кто-нибудь указать мне правильное направление?
Спасибо.
Edit: Это то, что выглядит в HTML-страницу
<script type="text/javascript" src="/static/WebApp/jquery-2.1.1.min.js"></script>
<script type="text/javascript" src="/static/WebApp/login.js"></script>
<script type="text/javascript" src="/static/WebApp/bootstrap-3.2.0-dist/js/bootstrap.min.js"></script>
<script type="text/javascript" src="/static/WebApp/zxcvbn-master/zxcvbn.js"></script>
<script type="text/javascript" src="/static/WebApp/jquery.pwstrength.bootstrap-1.2.2/dist/pwstrength-bootstrap-1.2.2.min.js"></script>
Это, как я ссылку на статические файлы
{% load staticfiles %}
<script type="text/javascript" src="{% static 'WebApp/jquery-2.1.1.min.js' %}"></script>
<script type="text/javascript" src="{% static 'WebApp/index.js' %}"></script>
<script type="text/javascript" src="{% static 'WebApp/bootstrap-3.2.0-dist/js/bootstrap.min.js' %}"></script>
<script type="text/javascript" src="{% static 'WebApp/flot/jquery.flot.js' %}"></script>
<script type="text/javascript" src="{% static 'WebApp/DataTables-1.10.2/media/js/jquery.dataTables.min.js' %}"></script>
Привет, Спасибо за ваш ответ! Я попытался изменить псевдоним на/static/E: \ Bitnami \ djangostack-1.6.7-1 \ apache2 \ static \, однако я все еще получаю 404. – user1157751
Вы перезапустили службу apache каждый раз, когда вы что-то меняете? В моем случае это всегда единственный способ заставить apache видеть изменения. –
Да, я пытался перезапустить его каждый раз, когда я вносил изменения. Есть ли способ отладить это, кроме HTTP 404? – user1157751