python web 怎么部署

2015-10-08 10:03:41 +08:00
 kidneyband
我没有 web 前端的经验。之前想学学前端,开始是学 java web ,边看视频边学,视频里用的是 MyEclipse 我用 Eclipse 跟着学,学得非常痛苦。弃坑。

后来学 python 学了一点 django ,觉得这个框架好。简单,傻瓜式。

写了一点贼简单的页面就想着,部署到服务器上,可是我看了一点的书,视频等,没有比较完整的讲怎么部署。

问:如果我要大概了解这一整套的话,需要看些什么东西?
8156 次点击
所在节点    Python
31 条回复
twor2
2015-10-08 16:40:59 +08:00
刚开始的时候,没必要买服务器,可以用阿里的 ACE ,支持 python 2.7 ,包月 20 元,按量每小时几分钱。

扩展服务(免费)包含:
1.缓存( cache )
2.数据库( MySql )
3.定时任务( Cron )
4.后台任务( Task )
5.存储( Storage )

如果要跑 django ,官方帮助见
https://docs.aliyun.com/?spm=0.0.0.0.S8S75U#/pub/ace/quick-start/python

我的一点经验:

1.需要在部署跟目录下添加 requirements.txt
添加一行 django ;如果要支持 mysql 可以添加一行 MySQL-python ,其他的 pymsql 也可以

2.需要在部署跟目录下添加 requirements.txt
from django.core.wsgi import get_wsgi_application
import os
os.environ['DJANGO_SETTINGS_MODULE'] = 'myapp_projectname.settings'
application = get_wsgi_application()

3.需要在部署跟目录下添加 app.yaml
version: 1
static:
- path: /static/
files: /static/
expire: 30d
- path: /templates/
files: /templates/
expire: 30d

部署采用 svn ,还算方便。

PS:第一次 svn checkout 的时候会有 requirements.txt , requirements.txt , app.yaml 略微修改一下就好
twor2
2015-10-08 16:43:44 +08:00
更正:
2.需要在部署跟目录下添加 requirements.txt
=
2.需要在部署跟目录下添加 index.py
twor2
2015-10-08 16:47:09 +08:00
@cnleoyang 很多部署资料都能搜到 DO 上面,而且讲的很清楚
aiver
2015-10-08 16:51:50 +08:00
supervisor + gunicorn + virtualenv + nginx
我觉得你如果是起步的话,可以用 nginx + virtualenv ,阿里云上买台低配的 linux 服务器,应用程序传上去, nginx 配置一个虚拟主机,用 IP 访问基本上就差不多了。另外,新手可以看看 Flask 框架,比 Django 更容易上手
Silicon
2015-10-08 16:55:11 +08:00
我在用 Tornado ,所以直接 supervisor 加一条 python main.py ,然后 nginx 上设置下反代
wingyiu
2015-10-08 17:27:49 +08:00
fabric+supervisor+venv+tornado
wellsc
2015-10-08 19:18:40 +08:00
python 部署有奇门, Tornado 大法好。
MrEggNoodle
2015-10-08 19:31:50 +08:00
建议用 uwsgi+Nginx ,在 uwsgi 的官网就有一篇关于 django 的部署,跟着教程走就可以成功了。
链接:
http://uwsgi-docs.readthedocs.org/en/latest/tutorials/Django_and_nginx.html?highlight=django
中文翻译:
http://www.jianshu.com/p/e6ff4a28ab5a
kidneyband
2015-10-09 10:01:45 +08:00
@twor2 需要的就是这个答案,非常感谢。我去瞅瞅
lidiya
2015-10-09 18:09:23 +08:00
题主可以看下这个教程 http://www.maiziedu.com/course/python/
上面有完整的 django 知识及项目部署 高清视频教程 免费学习
gevin
2015-10-12 22:37:53 +08:00
uwsgi 官方文档的翻译:

基于 nginx 和 uWSGI 在 Ubuntu 上部署 Django
http://blog.igevin.info/post/12/

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/226227

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX