how to setup nginx + uwsgi + bottle for RESTful python framework

how to setup nginx + uwsgi + bottle for RESTful python framework

python

  1. install necessary modules
  1. yaourt -S uwsgi uwsgi-plugin-python python-bottle


  1. setup nginx

    [email protected]~ $ cat /etc/nginx/conf.d/my.conf

  1. server {


  2. listen 9000; 

  3. server_name 45.63.49.131; 


  4. # Path to the root of your installation 

  5. root /srv/http/my/; 


  6. location / { 

  7. include uwsgi_params; 

  8. uwsgi_pass 127.0.0.1:9090; 





  1. write python code

    [email protected]~ $ cat /srv/http/my/hello.py

  1. from bottle import route, default_app, request, post


  2. @route(‘/‘) 

  3. def hello(): 

  4. return ‘hello world!‘ 


  5. upload_path=‘./static‘#定义上传文件的保存路径 

  6. @route(‘/upload‘,method=‘POST‘) 

  7. def do_upload(): 

  8. uploadfile=request.files.get(‘data‘) #获取上传的文件 

  9. uploadfile.save(upload_path,overwrite=True)#overwrite参数是指覆盖同名文件 

  10. return u"上传成功,文件名为:%s,文件类型为:%s"% (uploadfile.filename,uploadfile.content_type) 

  11. #filename是获取上传文件文件名,content_type是获取上传的文件类型 



  12. application = default_app() 

  1. setup uwsgi
  1. uwsgi --plugin python -s 127.0.0.1:9090 -w hello


  1. visit web from python script
  1. #!/usr/bin/python



  2. import requests 


  3. url=‘http://45.63.49.131:9000/upload‘ 


  4. files = {‘data‘: open(‘dwm_config.h‘, ‘rb‘)} 

  5. r = requests.post(url,files=files) 

  6. print(r.text) 




2017-5-9 [email protected]

时间: 2024-12-25 22:50:06

how to setup nginx + uwsgi + bottle for RESTful python framework的相关文章

nginx+uwsgi部署多个python应用

参考文章: http://kb.cnblogs.com/page/86907/ (配置Nginx+uwsgi更方便地部署python应用) http://projects.unbit.it/uwsgi/wiki/VirtualHosting (uWSGI VirtualHosting Mode) http://uwsgi-docs.readthedocs.org/en/latest/Configuration.html (Configuring uWSGI) 为了让多个站点共享一个uwsgi服务

一次曲折的nginx+uwsgi问题排查、模型调优

业务的系统模型是nginx+uwsgi,跑的python代码,相当于mongoDB的一层读api,负责读写mongo的数据,20台服务器每天的访问量在7000万左右,通过HTTP API的方式被其他业务系统调用,算下来量不是很大,不过业务本身是最核心的数据源,nginx层面做了一层uwsgi cache,命中率在30%左右. 最近上了详细的日志分析质量监控后,发现了一些问题,其中一个问题是所有机房的响应时间会同一时刻突然抖动,平均响应时间从70ms抖动到5到10s,然后瞬间恢复,从状态码上看不出

Nginx + uWSGI + Python + Django部署实例

Nginx: Nginx 是一个高性能的 Web 和反向代理服务器, 它具有有很多非常优越的特性: 作为 Web 服务器:相比 Apache,Nginx 使用更少的资源,支持更多的并发连接,体现更高的效率,这点使 Nginx 尤其受到虚拟主机提供商的欢迎.能够支持高达 50,000 个并发连接数的响应,感谢 Nginx 为我们选择了 epoll and kqueue 作为开发模型. 作为负载均衡服务器:Nginx 既可以在内部直接支持 Rails 和 PHP,也可以支持作为 HTTP代理服务器

Nginx+uwsgi或fastcgi部署Django项目

nginx+uwsgi ubuntu下先安装下C编译器和Python环境: sudo apt-get install build-essential python-dev 使用pip安装uwsgi: pip install uwsgi nginx配置: 可以单独为站点设置一个配置文件: sudo vim /etc/nginx/sites-enabled/mysite 或者直接在nginx.conf中设置: sudo vim /etc/nginx/nginx.conf 设置: server { l

Ubuntu下nginx+uwsgi+flask的运行环境搭建

选择web framwork是个很艰难的事情, 主要分为轻量级和重量级框架. 由于没有搭建网站这种需要, 所以回避SSH, Django这种框架, 而选择一个轻量级框架. 自己也比较青睐python这门语言, 就选择了flask框架, nginx代理服务器享誉盛名, 所以拿来使用咯. 一. 开发环境搭建 采用离线安装方式, ubuntu开发环境(centos等环境类似) nginx 安装 $ wget http://nginx.org/download/nginx-1.6.0.tar.gz #仅

centos6.5+Django+mysql+nginx+uwsgi

1.nginx的安装.这里采用nginx-1.6.0, 建立一个shell脚本然后执行. #!/bin/bash nginx_version="nginx-1.6.0" yum -y install gcc gcc-c++ pcre pcre-devel openssl openssl-devel cd soft tar zxvf $nginx_version".tar.gz" cd $nginx_version ./configure --error-log-pa

Django Nginx+uwsgi 安装配置

Django Nginx+uwsgi 安装配置 在前面的章节中我们使用 python manage.py runserver 来运行服务器.这只适用测试环境中使用. 正式发布的服务,我们需要一个可以稳定而持续的服务器,比如apache, Nginx, lighttpd等,本文将以 Nginx 为例. 安装基础开发包 Centos 下安装步骤如下: yum groupinstall "Development tools" yum install zlib-devel bzip2-deve

nginx+uwsgi+django+python 应用架构部署

系统centos6.5 1,安装配置nginx 和Python yum install nginx python 默认安装的是2.6 需要升级到2.7见教程 2,django 安装 下载当前最新的版本:Django-1.8.5.tar.gz $ wget --no-check-certificate https://www.djangoproject.com/download/Django-1.8.5.tar.gz (备注:--no-check-certificate 免证书认证,不然下载不了h

Centos+nginx+uwsgi+Python多站点环境搭建

前言 新公司的第一个项目,服务器端打算用python作为restful api.所以需要在Centos上搭建nginx+fastcgi+python的开发环境,但后面网上很多言论都说uwsgi比fastcgi在很多方面存在优势,推荐用uwsgi而不是fastcgi,详见:http://sunxiunan.com/?p=1778.因此,改为搭建nginx+uwsgi+python这样的技术组合. 正题 步入正题,开始搭建环境.http://www.cnblogs.com/xiongpq/p/338