23
我最近试图在OpenShift上导出一个Django项目,但毫无结果。我发现的唯一解决方案是“预建”(如https://github.com/openshift/django-example)。如何在OpenShift上配置Django?
我花了几个小时试图将它适应到我的项目,但我总是得到一个内部服务器错误。
那么,如何在openshift上设置Django?
我最近试图在OpenShift上导出一个Django项目,但毫无结果。我发现的唯一解决方案是“预建”(如https://github.com/openshift/django-example)。如何在OpenShift上配置Django?
我花了几个小时试图将它适应到我的项目,但我总是得到一个内部服务器错误。
那么,如何在openshift上设置Django?
我终于明白了。要做的第一件事就是启动openshift应用程序,编辑setup.py文件:
rhc app create -a APPNAME -t python-2.6
cd APPNAME
vim setup.py
您必须解除“install_requires = [‘的Django> = 1.3’]”
然后你就可以提交服务器:
git commit -a -m "Initialization"
git push
默认情况下,它安装Django的1.4,但我认为你可以选择用正确的另一个版本在setup.py安装要求。无论如何,你必须在你的计算机和服务器上运行相同的django版本才能进行以下操作。
创建Django项目:
cd wsgi
django-admin.py startproject PROJECTNAME
然后你必须编辑这个文件的应用程序,通过替换的全部内容:
#!/usr/bin/python
import os, sys
os.environ['DJANGO_SETTINGS_MODULE'] = 'PROJECTNAME.settings'
sys.path.append(os.path.join(os.environ['OPENSHIFT_REPO_DIR'], 'wsgi',
'PROJECTNAME'))
virtenv = os.environ['APPDIR'] + '/virtenv/'
os.environ['PYTHON_EGG_CACHE'] = os.path.join(virtenv, 'lib/python2.6/site-packages')
virtualenv = os.path.join(virtenv, 'bin/activate_this.py')
try:
execfile(virtualenv, dict(__file__=virtualenv))
except IOError:
pass
#
# IMPORTANT: Put any additional includes below this line. If placed above this
# line, it's possible required libraries won't be in your searchable path
#
from django.core.handlers import wsgi
application = wsgi.WSGIHandler()
最后,你可以提交修改:
cd ..
git add .
git commit -a -m "Project Creation"
git push
您应该看到django欢迎页面。 现在您可以编辑设置并导入您的django应用程序,而不需要不需要的内容
伟大的工作。谢谢! 对上述步骤的小扩展。 1.为了让你的静态文件得到服务,你需要把它们放在'PROJECTNAME/wsgi/static'中。 2.在'PROJECTNAME/wsgi/static'中,你也应该把'admin'文件夹放在'site-packages/Django-xxx/django/contrib/admin/static/admin'中。否则,你会错过静态的Django Admin文件。 – orschiro 2013-07-24 06:26:45
不幸的是,当我尝试你的解决方案时,我得到了503服务暂时不可用的错误。我按照我的项目名称编辑了PROJECTNAME,并用python2.7编辑了这一行。似乎有一个OpenShift的项目文档缺乏:( – shailenTJ 2013-08-07 21:32:45
我知道你刚刚编辑[这个文件](https://github.com/suhailvs/django-example/blob/master/wsgi/application),但仍然感谢对于GREAT WORK :) :))) – suhailvs 2013-10-01 07:24:06