ubuntu16下部署 Nginx+uWSGI+Flask

创建虚拟环境,安装好所需的flask相关插件,并将python写的app文件都拷贝到这个目录下,详情请看我的博客:

http://blog.csdn.net/a18373279153/article/details/78554980

 

安装并运行Nginx:

sudo apt-get install nginx
sudo /etc/init.d/nginx start

打开浏览器访问你的服务器,输入http://localhost/,你应该能看到Nginx欢迎页.

 

Nginx是一个提供静态文件访问的web服务,然而,它不能直接执行托管Python应用程序,而uWSGI解决了这个问题。让我们在虚拟环境中安装uWSGI,稍候再配置Nginx和uWSGI之间的交互。

pip3 install uwsgi

 

配置Nginx

首先删除掉Nginx的默认配置文件:

sudo rm /etc/nginx/sites-enabled/default

创建一个我们应用使用的新配置文件/etc/nginx/sites-enabled/my_nginx.conf:

server {
    listen      80;
    server_name localhost;
    charset     utf-8;
    client_max_body_size 75M;
 
    location / { try_files $uri @yourapplication; }
    location @yourapplication {
        include uwsgi_params;
        uwsgi_pass unix:/home/clark/py3env/uwsgi.sock;    
    }
}

 

将刚建立的配置文件使用符号链接到Nginx配置文件文件夹中,重启Nginx:

sudo ln -s /etc/nginx/sites-enabled/my_nginx.conf /etc/nginx/conf.d/
sudo /etc/init.d/nginx restart

配置uWSGI,

在虚拟环境中创建一个新的uWSGI配置文件/home/clark/py3env/uwsgi.ini:

[uwsgi]
base = /home/clark/py3env
#设置主app的名称,例如manage.py 就写如下
app = manage
module = %(app)
pythonpath = %(base)
socket = /home/clark/py3env/uwsgi.sock
chmod-socket    = 666
callable = app
logto = /home/clark/py3env/uwsgi.log

执行uWSGI,用新创建的配置文件作为参数:

uwsgi --ini uwsgi.ini

 

接下来访问你的服务器,现在Nginx可以连接到uWSGI进程了

 

 

 

 

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值