python部署web环境 python3+django+ngi

作者: 疯狂的冰块 | 来源:发表于2017-06-24 03:52 被阅读481次

    python3已经出来很久了,虽然现在2还是主流,但是3版本肯定是未来的趋势,2020年2停止支持,时间也很近了,提前做些准吧。笔者
    系统:centos 7
    python环境:python3.4

    1、安装django

    pip install django
    

    2、安装uwsgi

    pip install uwsgi
    

    报错如下:

    In file included from plugins/python/python_plugin.c:1:0:
    plugins/python/uwsgi_python.h:2:20: 致命错误:Python.h:没有那个文件或目录
    #include <Python.h>
    一般出现这种问题,都是 xx-devel没有安装,那我们就试一下看看有没有 python-devel,网上很多教程写的也是python-devel,然后就掉坑了,发现安装完毕还是出现问题

    这里应该安装python34-devel,就是版本的问题害我纠结了一天。特此声明,避免再入坑。

    sudo yum install python34-devel
    

    3、通过django新建第一个web项目

    django-admin.py startproject hello
    

    4、通过uwsgi来启动django

    uwsgi --http :8000 --module hello.wsgi
    

    控制台没有保持就说明一切正常!

    curl localhost:8000查看结果。

    5、配置nginx
    nginx配置起来相对较容易,

    安装nginx
    sudo yum install nginx
    # 编辑配置
    sudo vim /etc/nginx/nginx.conf
    

    一份简单的配置如下:

        server {
            listen       8090;#自定义端口,别和其他的冲突
            server_name  localhost;#域名,如果是正式环境可以换为类似于www.a.com这样的域名
    
            include /etc/nginx/default.d/*.conf;
    
            location / {
               proxy_pass   http://localhost:8000/;#这里写上刚刚uwsgi配置的url地址
            }
        }
    

    保存,重新载入配置

    nginx -s reload
    

    然后在浏览器输入localhost:8090 就可以看到我们的应用了

    简单的nginx命令可以参考我的另外一篇文章:http://www.jianshu.com/p/5da268958fc3

    参考命令:
    将python3版本链接到python
    ln -s /usr/local/python3/bin/python3 /usr/bin/python

    相关文章

      网友评论

      本文标题:python部署web环境 python3+django+ngi

      本文链接:https://www.haomeiwen.com/subject/wkbhcxtx.html