我是Django的初学者。当我在Apache2.4中使用mod_wsgi托管django应用程序时。我的base.css出了404错误。任何帮助应该被赞赏。
<IfModule mod_alias.c>
Alias /cgi-bin /home/vetconnect/public_html/cgi-bin`
Alias /static/ /home/vetconnect/djangosites/vetconnect/static/
</IfModule>
<IfModule mod_wsgi.c>
WSGIScriptAlias / /home/vetconnect/djangosites/vetconnect.wsgi
WSGIDaemonProcess vetconnect processes=7 threads=1 display-name=%{GROUP}
WSGIProcessGroup vetconnect WSGIApplicationGroup %{GLOBAL}
</IfModule>
答案 0 :(得分:0)
根据官方django documentation来管理静态文件,你可以检查这一点:
django.contrib.staticfiles
已包含在您的INSTALLED_APPS
。
在STATIC_URL
中定义settings.py
,例如STATIC_URL = '/static/'
在模板中使用{% load static %}
。
您可以定义目录列表STATICFILES_DIRS
STATICFILES_DIRS = [
os.path.join(BASE_DIR, "static"),
'/var/www/static/',
]
最后,您需要设置脚本别名,以便Apache将根域的请求传递给wsgi.py文件以及服务器静态和媒体文件。 Here is链接如何使用完整描述执行此操作
<VirtualHost *:80>
. . .
Alias /static /home/user/myproject/static
<Directory /home/user/myproject/static>
Require all granted
</Directory>
<Directory /home/user/myproject/myproject>
<Files wsgi.py>
Require all granted
</Files>
</Directory>
WSGIDaemonProcess myproject python-path=/home/user/myproject:/home/user/myproject/myprojectenv/lib/python2.7/site-packages
WSGIProcessGroup myproject
WSGIScriptAlias / /home/user/myproject/myproject/wsgi.py
</VirtualHost>