码迷,mamicode.com
首页 > 编程语言 > 详细

一个简单的python web应用部署 nginx + uwsgi

时间:2018-08-27 21:32:41      阅读:193      评论:0      收藏:0      [点我收藏+]

标签:端口   return   监听   users   网页中显示   cal   hello   itop   socket   

一个简单的python web应用部署 nginx + uwsgi

1.环境配置

(1) 所需环境

  操作系统:Mac os,linux

  python, web.py,uWSGI,uwsgitop,nginx

(2) 步骤

  安装python,web.py

  安装uWSGI:pip install uwsgi

  安装uwsgitop:pip install uwsgitop (检测uwsgi运行状态)

  安装nginx:pip install nginx

2.编写python web 应用 app.py

(1) 代码

# coding:utf-8
import web

urls = (/, index)
app = web.application(urls, globals())

class index:
    def GET(self):
        greeting = "hello world"
        return greeting

application = app.wsgifunc()

if __name__ = "__main__":
    pass

2) 注意

  application = app.wsgifunc() 必不可少少, 它作为 wsgi 或 uwsgi 操作的handler , uwsgi 不会运行 __main__ 中的代码

3. 配置uwsgi

1)编写 app.ini 文件

[uwsgi]
socket = /Users/cityking/workspace/django/uwsgi.sock
wsgi-file = app.py
home = /Users/cityking/workspace/django/django_env/
master = true

注意

  确保是在 app.py 所在的文件目录

  socket 确保与 nginx 配置中的 uwsgi_pass 一样,/Users/cityking/workspace/django/uwsgi/ 为当前所在目录

  Home 是运行环境所在的目录

2) 启动uwsgi

  uwsgi.ini

4. 配置nginx

1) 在复制系统配置文件 nginx.conf 文件

  cp /usr/local/etc/nginx.conf my_nginx.conf

  ln my_nginx.conf /usr/local/etc/nginx/my_nginx.conf

  修改 my_nginx.conf

server {
        listen        8080;
        server_name    localhost;
        location / {
                    include uwsgi_params;
                    uwsgi_pass
        unix:/Users/cityking/workspace/django/uwsgi/uwsgi.sock
         }
    }           

  Listen 为监听端口,即浏览器所访问的端口

  uwsig_pass 即 uwsgi 配置中的 socket 路径

5. 在浏览器中访问

  在浏览器中访问 http://localhost:8080

  在网页中显示hello world 则部署成功

一个简单的python web应用部署 nginx + uwsgi

标签:端口   return   监听   users   网页中显示   cal   hello   itop   socket   

原文地址:https://www.cnblogs.com/xushuhai/p/9544042.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!