OpenShift에서 Django를 어떻게 구성하나요?[닫은]
문제
최근 OpenShift에서 Django 프로젝트를 내보내려고 시도했지만 성과가 없었습니다.내가 찾은 유일한 솔루션은 "미리 구축된" 솔루션이었습니다(예: https://github.com/openshift/django-example).
내 프로젝트에 적용하려고 몇 시간을 보냈지만 항상 내부 서버 오류가 발생했습니다.
그렇다면 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 앱을 가져올 수 있습니다.
제휴하지 않습니다 StackOverflow