1、关闭SELINUX:

[root@PYTHON27 /]# vim /etc/selinux/config
将SELINUX=enforcing修改为SELINUX=disabled

2、关闭防火墙:

[root@PYTHON27 /]# service iptables stop
[root@PYTHON27 /]# chkconfig iptables off

3、安装EPEL源:

[root@PYTHON27 /]# yum -y install epel-release
[root@PYTHON27 /]# yum clean all
[root@PYTHON27 /]# yum makecache

4、安装系统工具:

[root@PYTHON27 /]# yum -y install vim wget telnet

5、安装编译支持包:

[root@PYTHON27 /]# yum -y install gcc gcc-c++ automake autoconf

6、安装Nginx支持包:

[root@PYTHON27 /]# yum -y install zlib zlib-devel pcre pcre-devel openssl openssl-devel

7、安装uwsgi及组件:

[root@PYTHON27 /]# yum -y install uwsgi uwsgi-devel uwsgi-plugin-python

8、查看uwsgi版本:

[root@PYTHON27 /]# uwsgi --version
2.0.14

9、启动uwsgi项目:

[root@PYTHON27 /]# uwsgi --ini /usr/local/src/python-test/python-test.ini

10、解压nginx安装包:

[root@PYTHON27 /]# tar -xzvf /usr/local/src/nginx-1.10.1.tar.gz -C /usr/local/src/

11、编译、安装:

[root@PYTHON27 /]# cd /usr/local/src/nginx-1.10.1
[root@PYTHON27 nginx-1.10.1]# ./configure --prefix=/usr/local/nginx --with-http_ssl_module
[root@PYTHON27 nginx-1.10.1]# make -j 2
[root@PYTHON27 nginx-1.10.1]# make install

12、修改Nginx配置文件:

[root@PYTHON27 /]# vim /usr/local/nginx/conf/nginx.conf
将下边内容:
location / {
root html;
index index.html index.htm;
} 替换为: location / {
include uwsgi_params;
uwsgi_read_timeout 3600;
uwsgi_pass 127.0.0.1:9090;
}

13、启动nginx服务:

[root@PYTHON27 /]# /usr/local/nginx/sbin/nginx -t
[root@PYTHON27 /]# /usr/local/nginx/sbin/nginx

14、测试:

[root@PYTHON27 /]# curl http://192.168.75.150/
Hello World

源码:

python-test.py:

def application(env, start_response):
start_response('200 OK', [('Content-Type','text/html')])
return ["Hello World"]

python-test.ini:

[uwsgi]
socket = 127.0.0.1:9090
wsgi-file = /usr/local/src/python-test/python-test.py
plugins = python
chdir = /usr/local/src/python-test
processes = 2
threads = 2
post-buffering = 8192
buffer-size = 65535
socket-timeout = 10
stats = 127.0.0.1:9191
# callable = python-test
uid = uwsgi
gid = uwsgi
master = true
protocol = uwsgi
buffer-size = 8192
pidfile = /var/run/uwsgi9090.pid
# daemonize = /var/log/uwsgi9090.log

注释: socket = 127.0.0.1:9090  ##启动端口9090的服务,需用nginx代理,可以对外提供服务。

    http-socket = 127.0.0.1:9090  ##启动端口9090的服务,可以直接对外提供服务。

python-test.py:通过WEB页面执行服务器上的脚本:

import os

def application(env, start_response):
os.chdir('/usr/local/src/python-test')
retcode = os.system('sh dir.sh')
if retcode == 0:
ret = 'success!'
else:
ret = 'failure!'
start_response('200 OK', [('Content-Type','text/html')])
return [ret]

[END]

uWSGI+Nginx安装、配置的更多相关文章

  1. Nginx 安装 配置 使用

    Nginx 安装 配置 使用 基本的HTTP服务器特性 处理静态文件,索引文件以及自动索引:打开文件描述符缓存(缓存元数据和文件描述符,下一次可以直接从内存找到数据或者文件的位置): 使用缓存加速反向 ...

  2. Nginx安装配置(转)

    Nginx 安装配置 Nginx("engine x")是一款是由俄罗斯的程序设计师Igor Sysoev所开发高性能的 Web和 反向代理 服务器,也是一个 IMAP/POP3/ ...

  3. Nginx安装配置PHP(FastCGI)环境的教程

    这篇是Nginx安装配置PHP(FastCGI)环境的教程.Nginx不支持对外部程序的直接调用或者解析,所有的外部程序(包括PHP)必须通过FastCGI接口来调用. 一.什么是 FastCGI F ...

  4. Nginx安装配置与HelloWorld

    <深入理解Nginx>阅读与实践(一):Nginx安装配置与HelloWorld 最近在读陶辉的<深入理解Nginx:模块开发与架构解析>,一是想跟着大牛练练阅读和编写开源代码 ...

  5. VMware Linux 下 Nginx 安装配置 - nginx.conf 配置 [负载两个 Tomcat] (三)

    首先启动Nginx 1. 相关浏览 两个 Tomcat 配置:  VMware Linux 下 Nginx 安装配置 - Tomcat 配置 (二) Nginx 安装配置启动: VMware Linu ...

  6. VMware Linux 下 Nginx 安装配置 - Tomcat 配置 (二)

    准备工作 相关浏览: VMware Linux 下 Nginx 安装配置 (一) 1. 选在 /usr/local/ 下创建 softs 文件夹,通过 ftp 命令 把 apache-tomcat-7 ...

  7. Hearbeat + Nginx 安装配置

    Hearbeat + Nginx 安装配置 实验环境 两台主机:Linux Centos 6.5 32位 主 服务端:Hearbeat + Nginx eth0:192.168.1.160(公网) e ...

  8. Nginx安装配置|Nginx反向代理|Nginx支持HTTPS|Nginx重定向

    Nginx安装配置 可以直接看到最下面的HTTPS. Nginx安装 我的系统如下: No LSB modules are available. Distributor ID: Ubuntu Desc ...

  9. python django uwsgi nginx安装

    python django uwsgi nginx安装 已安装完成python/django的情况下安装 pip install uwsgi cd /usr/share/nginx/html/ vim ...

  10. puppet 3+Unicorn+Nginx安装配置

    puppet 3+Unicorn+Nginx安装配置 2014-08-15 10:58 酒瓶不倒 酒瓶不倒的博客 字号:T | T 一键收藏,随时查看,分享好友! Unicorn 效率要比 Webri ...

随机推荐

  1. PHP中对象的深拷贝与浅拷贝

    先说一下深拷贝和浅拷贝通俗理解 深拷贝:赋值时值完全复制,完全的copy,对其中一个作出改变,不会影响另一个 浅拷贝:赋值时,引用赋值,相当于取了一个别名.对其中一个修改,会影响另一个 PHP中, = ...

  2. Oracle条件判断if...elsif

  3. getMessage(),getFile,getLine获取异常用法

    try { $param = $request->all(); $param['building_id'] = 0; $param['sync'] = 2; // 1小程序2App $param ...

  4. 重启iis命令

    iisreset

  5. 剑指offer(19)二叉树中和为某一值的路径

    题目: 输入一颗二叉树的跟节点和一个整数,打印出二叉树中结点值的和为输入整数的所有路径.路径定义为从树的根结点开始往下一直到叶结点所经过的结点形成一条路径.(注意: 在返回值的list中,数组长度大的 ...

  6. 剑指offer(11)

    题目: 输入一个链表,输出该链表中倒数第k个结点. 思路: 我们一先想到的应该是循环两次链表,第一次获得它的长度,然后用长度-k,得出目标节点在链表的第几位,再循环一次. 如果要求只用一次循环的话,我 ...

  7. python之路--FTP 上传视频示例

    # 服务端 import json import socket import struct server = socket.socket() server.bind(('127.0.0.1',8001 ...

  8. video maker & video tutorials

    video maker & video tutorials 视频课程制作工具 https://ke.qq.com/agency/personal/intro.html 成为网络老师 https ...

  9. QTP 自动化测试桌面程序--笔记(关闭 启动程序脚本) 、安装

    0 安装qtp .exe 文件 安装 插件文件(如delph) 1 关闭 启动程序: 将要操作的程序-存入localdatatable中 设置 迭代一次 rem SystemUtil.ClosePro ...

  10. 一、Dev单元格

    二.获取表格数据 int selectRow = gridView1.GetSelectedRows()[0]; string id = this.gridView1.GetRowCellValue( ...