在开发完django应用后,经过简单的测试完毕后,就要部署到服务器上面去。好在django的部署服务器可以有多种选择。最简单的方法是采用 django的开
发服务器,执行python manage.py runserver ip:port,这样就可以执行了。当然这也是这些方法里面生产效率最低的,在实际的生产环境中并不适宜。第二>
种方法是采用一些其它的封装好的web服务器,经过简单了解,有两款比较适合。一个是cherrypy采用的web服务器,另一个是twisted库基础上开发的django-on- twisted.当然,在此这上的选择则可以采用apache或是lighttpd,nainx等web服务器了。
现在我主要说一下采用cherrypy对应的web服务器的另一个针对django的封装服务器djangoCerise.基本上来讲,你所需要的所有信息可以从里获得,但是我仍要说一下我的使用过程。
1)下载DjangoCerise: http://xhtml.net/documents/scripts/djangocerise-1.2.zip
2)测试运行环境:进入django project的目录下面,然后进入python交互式环境,输入import myproject.settings,一般来讲是没有出错的。
3)将刚才下载的包解开,里面有个src目录,里面有几个文件,将这些文件放在与project同级目录下面,比方说你的project目录是/home/test/myprj,那么这些文件要放到/home/test下面。
4)将myprojectconf.py-dist改名为myprojectconf.py,然后修改三个参数值,DJANGO_SETTINGS,DJANGO_SERVE_ADMIN,PIDFILE,当然IP和端口号也要改
成实际使用的。
5)将daemon.sh修改为myproject.sh,并修改几个参数:DAEMON,PIDFILE,BASEDIR,CONFIG.可以对照示例修改,应该很好搞定的。
6)运行服务器:
A.pyton webserver.py --conf myprojectconf
B../myproject.sh start/stop/restart
C.注意,推荐使用第二种方法,不过前提是要先安装好start-stop-daemon包。
晚上试了一下django-on-twisted,但是最终失败了,解决了twisted.web2导入库的问题,原因在于默认的目录有问题,所以最后我强制将文件拷贝至目标>
目录。但是在运行服务的时候,要不提示prject目录有问题,要不就是提示project.urls未建立,这一点让我很郁闷。虽然可以断定是目录问题,但是估计还>
得根据源程序来对着看了。不过使用这种方法有个好处,据说可以实现软负载均衡,回头一定要把这个搞定。
阅读(1360) | 评论(0) | 转发(0) |