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