我已经尝试了Django几天了,我正试图用apache建立一个生产项目。我遵循了
的官方教程。http://docs.djangoproject.com/en/1.3/intro/tutorial01/一切工作都很好与开发服务器,但与apache,我失去了每一个管理风格。
我读过类似的文章,但至今没有成功。
Django admin没有样式Django:丑陋的管理界面
这可能是一个权利问题,但我已经复制了存储媒体文件的目录
/usr/share/pyshared/django/contrib/admin/媒体/
到/data
下的站点I服务器/数据/mysite//数据/媒体//数据/模板/
我尝试了不同的值/data/mysite/settings.py
/媒体/,/数据/媒体/
在apache配置中使用Alias项。
这是我的apache配置`服务器webmaster@localhost
DocumentRoot /data/sites/accounts/
Alias /media/ /usr/share/pyshared/django/contrib/admin/media/
<Directory />
Options None
AllowOverride None
Order allow,deny
allow from all
</Directory>
<Location />
SetHandler python-program
PythonHandler django.core.handlers.modpython
SetEnv DJANGO_SETTINGS_MODULE accounts.settings
PythonDebug On
PythonPath "['/data/sites/accounts', '/data/sites/accounts/unix_accounts', '/data/sites', '/usr/lib/pymodules/python2.6/django'] + sys.path"
</Location>
LogLevel warn
ErrorLog /var/log/apache2/error.log
CustomLog /var/log/apache2/access.log combined
我有直觉,这是一个正确的问题,但/data/media/和/data/模板有相同的权利/所有者,我可以修改任何模板没有任何问题,仍然没有管理风格。apache服务的每个文件都属于root目录:www-data,文件为750,dirs为710。
我真的很感谢你们中的任何一个人的任何想法帮助我解决这个问题:)
编辑:我已经使用了apache模块mod_python。请不要犹豫,询问更多的细节
非常感谢!
这绝对是Apache的问题。别名在DocumentRoot之外,但没有指定对它的访问权限:
http://httpd.apache.org/docs/2.0/mod/mod_alias.html别名注。如果不使用Firebug之类的工具,可以输入某个admin css文件的URL,以便在浏览器中查看响应(这至少比"no styles"提供了更多信息)。
我终于解决了这个问题!
我花了一些时间在这上面,看django的书和东西,但我在这个链接找到了解决方案:
Solution_StackOverflow
然后给出我的apache配置文件:
Alias /media/css /data/media/css
<Directory /data/media/css>
Order Allow,Deny
Allow from all
</Directory>
<Directory />
Options FollowSymlinks
AllowOverride None
Order allow,deny
allow from all
</Directory>
<Location /admin/>
SetHandler python-program
PythonHandler django.core.handlers.modpython
SetEnv DJANGO_SETTINGS_MODULE accounts.settings
PythonDebug On
PythonPath "['/data/sites/accounts', '/data/sites/accounts/unix_accounts', '/data/sites', '/usr/lib/pymodules/python2.6/django'] + sys.path"
</Location>
我复制了/data/media目录下的媒体文件
我希望这能帮助到有同样烦恼的人。
谢谢你的帮助!