在将Django-1.8.2应用部署到Apache后,无法显示admin应用的静态内容,而在“manage.py runserver”命令下可以正常显示,主要是Apache没有找到Django静态内容的位置,修改:
操作系统:CentOS 6.5
Django版本: 1.8.2
Python版本: 2.7.10
Apache版本: 2.2.15
本文采用的Django部署方式是在/etc/httpd/conf/httpd.conf中建立一个VirtualHost,为了显示admin应用的静态内容,需要在对应的VirtualHost中添加如下内容:
<VirtualHost *:8000> ... Alias "/static" "/usr/local/lib/python2.7/site-packages/Django-1.8.2-py2.7.egg/django/contrib/admin/static" <Directory "/usr/local/lib/python2.7/site-packages/Django-1.8.2-py2.7.egg/django/contrib/admin/static"> Order Deny,Allow Allow from all </Directory> <Location "/static"> SetHandler None </Location> ... </VirtualHost>
其中"/django/contrib/admin/static"的路径需要根据具体安装的环境,可以查找其中的一个css文件或gif文件来确定;此外,<Location>部分并不是必须的。