当前位置:C++技术网 > 精选软件 > 云平台开发架构分析系列:17 uWSGI服务器的安装

云平台开发架构分析系列:17 uWSGI服务器的安装

更新时间:2017-07-01 03:20:48浏览次数:1+次

       在《云平台开发架构分析系列16:Nginx+uWSGI+webpy服务器架构原理3》里,就介绍完了这几个服务器关键组成部分的背景知识。最开始的图中,有一个虚线是连接浏览器和uWSGI的,表示的是,uWSGI是可以直接当做HTTP服务器的。在这里就单独说一下,免得有些朋友看到感觉怪怪的,说文章没有交代。

        Nginx的安装在前面就已经讲过了。现在要安装的是uWSGI服务器。然后还要安装webpy。我们先来安装uWSGI服务器吧。

        要想正确的安装uWSGI服务器,要做一些准备工作。

    1.安装python,并准备好相关头文件和库文件

        安装python的方法,在Centos中,已经自带了,我们只需要这样:

    

yum install python
    即可完成安装。安装完后,进入根目录,搜索一下Python.h,看看有没有安装上。如果没有,请查看解决办法:《Centos上安装了Python却还是提示找不到Python.h文件的解决办法》。搜索文件的命令如下:

    

cd /
find -name Python.h
    如果没有搜到,就直接返回了,什么也没有。如果搜索到了,就会显示这个文件的一个或者多个路径。如果搜索到了,就成功了。

    2.安装或者连接好crypto库

        这个库在openssl安装时会安装上。请注意名称为crypto,后面有一个字母o,可能你的系统里还有一个库是crypt,这两个不是同一个东西。同样,你还是搜索库文件,看看有没有。有的话,应该在ssl目录下。如果没有安装openssl,那么先安装。

        如果安装了openssl,你看看/usr/lib/或者/usr/lib64/里面有没有libcrypto.so文件。如果没有,请做一个软链接,如:

cd /usr/lib/
ln -s /usr/local/ssl/lib/libcrypto.so.1.0.0  libcrypto.so    
    具体路径用你搜索出来的。这个命令是在/usr/lib/下运行的,会在这个目录下建立一个指向ssl目录下的这个软链接文件libcrypto.so。libcrypto.so文件在uWSGI安装的时候需要。

        当然,如果安装uWSGI的过程还提示其他库找不到,那么就自行安装好。那么现在开始安装uWSGI服务器。

    1.下载安装文件

        官方下载地址:点此下载uWSGI安装包

        你可以将这个安装包下载到本地电脑,然后再上传到服务器上。放到对应的目录下,如/tmp/

    2.解压文件

        下面是安装uWSGI的命令(安装包内置了python脚本,可以用python安装uWSGI):

cd /tmp/
tar -xvzf uwsgi-2.0.15.tar.gz
cd uwsgi-2.0.15
python setup.py build
python setup.py install

如果发现提示:ImportError: No module named setuptools。说明python没有安装setuptools模块。下面安装这个模块:


wget http://pypi.python.org/packages/source/s/setuptools/setuptools-0.6c11.tar.gz
tar zxvf setuptools-0.6c11.tar.gz
cd setuptools-0.6c11
python setup.py build
python setup.py install
    然后回到目录uwsgi-2.0.15,重新执行最后两句,就可以了。

    3.安装完成

        安装完成,我们可以在目录/usr/bin/中找到uwsgi程序文件。直接输入uwsgi命令,可以执行命令,只不过没有参数会报错。但是确实安装成功了。在Centos64位系统中,启动uwsgi时可能会提示:
uwsgi: error while loading shared libraries: libpcre.so.0: cannot open shared object file: No such file or directory
    不用担心,只是因为libpcre.so.0没有复制到/usr/lib64/目录下。你可以搜索一下:

find / -name libpcre.so* 
    看看有哪些目录有。比如在/usr/local/lib/目录下有这个文件,可以直接复制到/usr/lib64/下,这样就可以了。
cp /usr/local/lib/libpcre.so.0 /usr/lib64/

        后面再介绍uwsgi启动相关的知识,本篇就到此为止。