如何在服务器上使用Eclipse发布Pydev应用?
我刚开始接触Eclipse和网页应用开发。我用Eclipse写了一个Django应用,这个应用在Django自带的开发服务器上运行得很好。现在,我想把这个应用导出,让它在apache2服务器上运行。我已经安装了这个服务器,并在Eclipse里进行了配置(设置了服务器运行环境的偏好设置并创建了服务器)。
那么,我接下来需要按照什么步骤来导出我的应用,并让它在服务器上运行呢?
1 个回答
2
你可能是在用Django开发服务器(也就是manage.py runserver
)配合Eclipse来开发的。其实,Eclipse或者其他的开发工具和你的网站应用上线没什么直接关系。
Django的文档里有很详细的说明,教你如何把应用部署到Apache和WSGI上,具体可以参考这个链接:如何部署你的应用。
简单来说,你需要把在Eclipse里的配置转移到WSGI脚本中。WSGI脚本是一个由Apache的mod_wsgi模块运行的Python脚本。下面是一个WSGI脚本的例子:
import os
PROJECT_DIR = os.path.dirname(__file__)
# You probably provided some python-paths (places to look for python modules)
# in your eclipse configuration. You'll need to add those path's to the wsgi
# script too.
os.path.append(PROJECT_DIR)
os.path.append(PROJECT_DIR + '/lib')
os.path.append(PROJECT_DIR + '/src')
# You probably have this set in eclipse too:
os.environ['DJANGO_SETTINGS_MODULE'] = 'production_setting'
import django.core.handlers.wsgi
application = django.core.handlers.wsgi.WSGIHandler()
把PYTHON_PATH设置为相对于WSGI脚本文件的路径是个好主意。这样你的应用就更容易迁移了。
在上线的时候,你可能想要关闭DEBUG模式。可以通过一个单独的settings.py
文件来实现。一般的生产环境设置可能是这样的:
from settings import *
DEBUG = False
TEMPLATE_DEBUG = False
maybe your database settings...
maybe some secret keys...
maybe some API keys to various services...