【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】

之前虽然也用nginx + uwsgi + webpy的方法部署过网站,但是用了gunicorn之后,发现用这种方法部署网站更为简单。下面我详细描述一下如何用这种方法进行网站部署。

1、准备server.py
    和uwsgi部署的时候一样,这里仅仅需要设置一个application就可以了。

#!/usr/bin/python
import weburls = ('/', 'Hello')class Hello(object):def GET(self):return 'Hello world'app = web.application(urls, globals())
application = app.wsgifunc()

2、安装gunicorn
    安装gunicorn的方法非常简单,在ubuntu下面一条命令就可以解决,

sudo apt-get install gunicorn

3、用gunicorn启动server.py文件
    启动的时候注意,最后一个选项是由文件名+wsgifunc组成的。同时,我们在选项中添加了gevent的属性,gunicorn本身支持gevent机制,可以有效提高server的性能。

gnicorn -b 127.0.0.1:8080 --worker-class gevent server:application

4、用浏览器做测试
    这个时候不出意外,你已经可以用127.0.0.1:8080访问我们的网站了。
    
5、准备nginx.conf文件
    通常为了利用nginx做static文件加速,或者利用nginx做均衡负载,我们常常需要另外安装一下nginx软件。因此,此时nginx.conf必须准备好。当然,为了简单起见,我们这里只做一个代理就可以了,整个conf文件内容如下,


worker_processes 1;events{worker_connections 1024;
}http{sendfile on;keepalive_timeout 65;server {listen       80;server_name  localhost;location / {proxy_pass http://127.0.0.1:8080;} }}

6、重启启动nginx
    nginx.conf准备好后,这个时候先将它copy到/etc/nginx目录下。接下来,我们需要重新启动nginx软件,一个命令就可以了,

service nginx restart

7、用浏览器测试80端口
    有了nginx做代理,这个时候就可以用浏览器访问127.0.0.1了,因为一般网站默认用80做端口,所以没有意外的话,这个时候你就可以看到webpy给出的打印消息了。

所以webpy就是一个cgi接口,gunicorn是http服务器,nginx负责均衡负载。

python编程(webpy + gunicorn + nginx部署)相关推荐

  1. python flask gunicorn nginx 部署

    WSGI协议 Web框架致力于如何生成HTML代码,而Web服务器用于处理和响应HTTP请求.Web框架和Web服务器之间的通信,需要一套双方都遵守的接口协议.WSGI协议就是用来统一这两者的接口的. ...

  2. no python application found_用Nginx部署Django服务no python application found

    报错如下: --- no python application found, check your startup logs for errors --- [pid: 20548|app: -1|re ...

  3. Flask 应用部署方式之 Flask+Gunicorn+Nginx

    1. Why Flask+Gunicorn+Nginx Flask+Gunicorn+Nginx是最常用的Flask部署方案,大家深究过为何用这样的搭配么? 1.1 Why? Flask 是一个web ...

  4. 【新手向】阿里云上ubuntu+flask+gunicorn+nginx服务器部署(二)项目部署

    本项目实现的是类似于ins的图片分享网站.继续(一),当nginx的配置已修改好后,要在远程服务器上部署网站,只需要几个步骤: 1 前期准备 2 将运行网站的代码从github上下载过来 3 下载依赖 ...

  5. 如何让nginx执行python代码_生产环境部署Python语言代码(django+uwsgi+nginx)

    本文主要向大家介绍了生产环境部署Python语言代码(django+uwsgi+nginx),通过具体的内容向大家展示,希望对大家学习Python语言有所帮助. 基础环境不做介绍,在django开发w ...

  6. Python编程入门实战:打造你的第一个Web应用

    简介 欢迎来到本篇博客--"Python编程入门实战:打造你的第一个Web应用".无论你是一个初学者,还是有一些编程基础的开发者,我相信你都可以在这篇文章中收获知识和启发. Pyt ...

  7. python编程300集免费-python 300本电子书合集

    链接: https://pan.baidu.com/s/1CNlB35ASnDNlUGNCZJbiAA 提取码: fxig Q群:592857363 更多所在 数据科学速查表 零起点Python机器学 ...

  8. python基础学习[python编程从入门到实践读书笔记(连载三)]:django学习笔记web项目

    文章目录 Django项目:学习笔记web网页 项目部署 参考 自己部署的网站,还是小有成就感的,毕竟踩过很多坑,实战技能也有些许进步. 网站链接:http://lishizheng.herokuap ...

  9. Python学习笔记:Day15 部署Web App

    前言 最近在学习深度学习,已经跑出了几个模型,但Pyhton的基础不够扎实,因此,开始补习Python了,大家都推荐廖雪峰的课程,因此,开始了学习,但光学有没有用,还要和大家讨论一下,因此,写下这些帖 ...

最新文章

  1. 改用C++生成自动化数据表
  2. Request header field authorization is not allowed by Access-Control-Allow-Headers in preflight respo
  3. 用html和css布局如下图像,[看书][CSS精粹(第2版)]第三章 CSS和图像 HTML网页布局...
  4. java多线程创建runnable_Java线程池和runnables创建runnables
  5. 作者:景志刚(1977-),男,现就职于中国人民银行征信中心数据部,主要研究方向为数据挖掘。...
  6. c语言屏蔽按键,VC实现让关闭按钮成灰色不可用的方法
  7. Linux的三种权限含义,Linux chmod命令及权限含义
  8. javaweb——总结
  9. git gc 的使用
  10. fiddler中文乱码解决
  11. 如何查看SQL的执行计划
  12. fclk if总线_技嘉B550手把手超频指南,光威血影为例
  13. vue 图片写入文字,图片注入文字,图片添加文字
  14. 微信小程序云数据库调用模板
  15. I2C总线与EPPROM
  16. 数字黑洞java_java实现数字黑洞
  17. 交通运输学计算机吗,交通运输专业所属学科门类是什么
  18. 计算机桌面的图标怎么删除,电脑桌面图标箭头怎么去掉_消除桌面图标小箭头的具体方法-系统城...
  19. 微信公众号svg互动_“戴上太阳镜,弗兰克”:与SVG面罩的互动
  20. 直播预告|5月24日下午14:00 AAAI 专场来啦

热门文章

  1. Java里的并发容器与安全共享策略总结
  2. 深度分析 Java 的枚举类型:枚举的线程安全性及序列化问题(转)
  3. Java SE 第二十三讲----static关键字and final关键字
  4. 启动tomcat后无法访问
  5. IT项目范围管理案例分析——柳工错在哪里?
  6. zafu 1461 (DP)
  7. 最新“母马”病毒反杀主流杀毒软件
  8. LHF Objective-C语法(7)id类型、动态判断与选择器
  9. URLRewiter使用
  10. ASP.NET的权限问题