使用apache为django 1.5提供管理css
我第一次将构建在Django 1.5上的应用程序移动到运行apache的开发服务器上。我有它大部分正常运行,但我有CSS服务的问题。我可以让网站的CSS工作,但不是管理员的CSS,或者让管理员的CSS工作,但不是网站的CSS 我按照文档的说明,使用collectstatic命令将所有静态资产放入static\u根文件夹 这是我的设置文件中的相关数据使用apache为django 1.5提供管理css,django,apache,django-1.5,Django,Apache,Django 1.5,我第一次将构建在Django 1.5上的应用程序移动到运行apache的开发服务器上。我有它大部分正常运行,但我有CSS服务的问题。我可以让网站的CSS工作,但不是管理员的CSS,或者让管理员的CSS工作,但不是网站的CSS 我按照文档的说明,使用collectstatic命令将所有静态资产放入static\u根文件夹 这是我的设置文件中的相关数据 STATIC_ROOT = '/var/www/projectmanagement/django/static/' STATIC_URL = '/
STATIC_ROOT = '/var/www/projectmanagement/django/static/'
STATIC_URL = '/static/'
STATICFILES_DIRS = (
'/var/www/projectmanagement/django/projectmanagement/projects/static',
)
这是httpd.conf中的相关数据
Alias /static/admin/ /var/www/projectmanagement/django/static/admin/
Alias /static /var/www/projectmanagement/django/static/
<Directory /var/www/projectmanagement/django/static/>
Order deny,allow
Allow from all
</Directory>
WSGIScriptAlias / /var/www/projectmanagement/django/projectmanagement/django.wsgi
<Directory /usr/local/wsgi/scripts>
Order allow,deny
Allow from all
</Directory>
在httpd.conf文件中的第一个别名之前,我使用管理css,但不使用站点的css。如果它消失了,那么网站的css工作,但管理员的不工作。这让我相当困惑。添加该别名将捕获所有.css请求,但看起来只能为管理员css服务。删除它意味着css请求将到达您的
WSGIScriptAlias
,我猜您已经得到了DEBUG=True
。。。所以django将为您提供静态媒体
我不知道django内置的静态服务器为什么不能为您的管理员css工作-您是否设置了静态文件查找器
无论如何,您的别名应该是这样的,这样它就可以服务于您的所有静态文件:
AliasMatch /static/ /var/www/projectmanagement/django/static/
AliasMatch /([^/]*\.css) /var/www/projectmanagement/django/static/admin/css/$1
AliasMatch /static/ /var/www/projectmanagement/django/static/