Nginx+uWSGI+Django+Python+ MySQL 搭建可靠的Python Web服务

一、安装所需工具

yum -y install gcc gcc-c++ rpm-build mysql* libtool-ltdl* libtool automake autoconf libtool make setuptool

二、编译安装Python2.7.5

1. 下载python2.7.5,保存到 /data/qtongmon/software

2. 解压文件

tar xvf Python-2.7.5.tar.bz2

3. 创建安装目录

mkdir /usr/local/python27

4. 安装python

./configure --prefix=/usr/local/python27 --enable-shared

make

make install

5. 修改老版本的ln指向(注意:这里修改后,可能会影响yum的使用)

mv /usr/bin/python /usr/bin/python2.4.3

ln -s /usr/local/python27/bin/python /usr/bin/python

6.yum是使用python写的,升级新版本的python后会导致yum不可用,如下为运行yum时的错误提示:

There was a problem importing one of the Python modules

required to run yum. The error leading to this problem was:

No module named yum

解决方法:

查找yum文件,并编辑此py文件

[root@TC-Boss ~]# which yum

/usr/bin/yum

[root@TC-Boss ~]# vi /usr/bin/yum

#!/usr/bin/python

改为:

whereis python出来的结果(老版本的python)

#!/usr/bin/python2.6

然后保存OK.

二、安装uWSGI

下载uWSGI的最新版

wget

因为我最后采用xml配置django app 的部署,所以编译 uWSGI 时候需要把libxml编译进去

yum -y install libxml2-devel

剩下的就简单了

tar zxvf uwsgi-1.9.17.tar.gz

cd uwsgi-1.9.17

make

cp uwsgi /usr/sbin/uwsgi

如果遇到错误:python: error while loading shared libraries: libpython2.7.so.1.0:

cannot open shared object file: No such file

按如下方式解决:

vim /etc/ld.so.conf.d/python2.7.conf

加入以下内容:/usr/local/python27/lib (实际的python安装路径下的lib目录)

保存退出后运行:

ldconfig

即可

至此 uWSGI 就算是安装完成了,下一步安装 Nginx

更多详情见请继续阅读下一页的精彩内容

推荐阅读

你应该使用 Nginx + uWSGI 

uWSGI + Nginx 部署 Flask Web 应用

Django+Nginx+uWSGI 部署

Linux下Nginx+uWSGI部署Python应用

Ubuntu Server 12.04 安装Nginx+uWSGI+Django环境

CentOS 5.5 + Nginx 0.8.50 + uWSGI + Django 1.2.3 部署Django项目

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/af21e42ed2be8598253f909cc4e2de87.html