我不确定发生了什么,但我遵循了一些我在互联网上找到的关于通过使用mod_rewrite通过静态文件夹(从$ OPENSHIFT_DATA_DIR提供)提供媒体文件的指南。现在唯一的问题是,我的管理员文件不再获得服务,我正在努力解决它。
RewriteEngine On
RewriteRule ^application/media/(.+)$ /static/$1 [L]
以上版本适用于我的用户上传的/ media /文件,但是在提供的管理文件方面存在很大问题。他们似乎刚从/ static / admin /.
停止服务答案 0 :(得分:0)
我已经设法通过在构建文件中添加一些命令来实现这一点。现在,这将直接将所有管理文件复制到/ static / admin。
它似乎并不像现在这样干净,但现在才会这样做,直到有人能够对这个问题进行改进。
if [ ! -d $OPENSHIFT_REPO_DIR/wsgi/static/admin ]; then
mkdir $OPENSHIFT_REPO_DIR/wsgi/static/admin
fi
cp $OPENSHIFT_GEAR_DIR/virtenv/lib/python2.6/site-packages/Django-1.4.1-py2.6.egg/django/contrib/admin/static/admin $OPENSHIFT_REPO_DIR/wsgi/static/
答案 1 :(得分:0)
每当部署时,都应该从django运行collectstatic命令。这会将所有应用程序中必要的静态文件复制到正确的目录中。
我有一个django 1.6的github示例。它是setttings.py设置和action_hook的组合。
https://github.com/jfmatth/openshift-django16
HTH