Cuối cùng tôi đã tìm ra. Điều đầu tiên cần làm là để bắt đầu một ứng dụng OpenShift và chỉnh sửa các tập tin setup.py:
rhc app create -a APPNAME -t python-2.6
cd APPNAME
vim setup.py
Bạn cần phải bỏ ghi chú "install_requires = [ 'Django> = 1.3']"
Sau đó, bạn có thể cam kết tới máy chủ:
git commit -a -m "Initialization"
git push
Theo mặc định, nó cài đặt django 1.4 nhưng tôi nghĩ bạn có thể chọn phiên bản khác với yêu cầu cài đặt chính xác trong setup.py. Dù sao, bạn sẽ phải chạy cùng một phiên bản django trên máy tính của bạn và máy chủ cho những điều sau đây.
Tạo dự án django của bạn:
cd wsgi
django-admin.py startproject PROJECTNAME
Sau đó, bạn sẽ phải chỉnh sửa các ứng dụng tập tin, thay thế toàn bộ nội dung bởi:
#!/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()
Cuối cùng, bạn có thể cam kết những sửa đổi:
cd ..
git add .
git commit -a -m "Project Creation"
git push
Bạn sẽ thấy trang chào mừng django. Bây giờ bạn có thể chỉnh sửa cài đặt và nhập ứng dụng django của bạn mà không có nội dung không mong muốn
Công việc tuyệt vời. Cảm ơn! Tiện ích mở rộng nhỏ cho các bước ở trên. 1. Để các tệp tĩnh của bạn được phân phát, bạn cần đặt chúng trong 'PROJECTNAME/wsgi/static'. 2. Trong 'PROJECTNAME/wsgi/static', bạn cũng nên đặt thư mục' admin' từ 'site-packages/Django-xxx/django/contrib/admin/static/admin'. Nếu không, bạn sẽ bỏ lỡ các tập tin quản trị Django tĩnh. – orschiro
Thật không may khi tôi đã thử giải pháp của bạn, tôi nhận được một lỗi Tạm thời Dịch vụ 503. Tôi đã chỉnh sửa PROJECTNAME theo tên dự án của tôi và chỉnh sửa dòng với python2.7. Dường như thiếu tài liệu dự án cho OpenShift: ( – shailenTJ
tôi biết bạn vừa chỉnh sửa [tệp này] (https://github.com/suhailvs/django-example/blob/master/wsgi/application) nhưng vẫn cảm ơn cho công việc GREAT :)))) – suhailvs