局域网图片网站制作:Nginx,python及Flask的安装配置


由于上一篇文章内容过多,因此将Nginx,python虚拟环境和Flask的安装做为一个新的篇来讲述,本篇内容相对简单,而且有其他文章已经针对python虚拟环境和Flask有所讲述,所以这里简单说明:

Nginx的安装

centOS默认的yum是没有Nginx源的,我这里参考网络的方法将源加入到yum中,具体如下:

rpm -ivh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm

执行yum install即可安装Nginx

yum -y install nginx

安装完毕启动Nginx,输入:

service nginx start

正常情况下,在浏览器页面输入:http://192.168.1.168就可以看到Nginx的欢迎页面。

Python3的安装和Flask的安装。

centOS默认python版本是2.75,我们这边要更新到python3,按照如下方式进行:

yum install epel-release
yum install python34

然后按照 Python Flask微框架安装与基础说明 配置python 虚拟环境和安装Flask,简要步骤如下:

# 新建文件夹
mkdir p3venv
# 创建虚拟环境
python3 -m venv p3venv/
# 使能虚拟环境
#source p3venv/bin/activate
# 安装flask
pip install flask

这样基本的flask的环境安装完毕,需要更多的库的时候,可以继续用pip install 来安装。

编写简单的flask demo,测试Nginx的转发。

flask demo 如下所示:

# -*- coding: utf-8 -*-
#
# some messages for author 
#

# import flask
from flask import Flask

# 定义 app
app = Flask(__name__)

# 根页面
@app.route('/')
def index():
    # demo 
    return '<h1>Hello World!</h1>'
 
#执行app.run
if __name__ == '__main__':
    app.run(debug=True)

保存上述代码为demo.py, 直接运行python demo.py,然后再新窗口中输入:

curl 127.0.0.1:5000
#即可看到hellworld的页面内容。
  • 安装gunicorn

在虚拟的python3环境下输入 :

pip install gunicorn

安装完毕后输入:

#注意文件路径和执行的app名称要和文件一致。
gunicorn -w 4 -b 127.0.0.1:8080 demo:app

打开/etc/nginx/conf.d文件夹中的default.conf文件,修改配置Nginx方法如下(这里也可以将default.conf改成.bak,然后新建一个carton.conf文件即可):

server {
    listen 80;
    server_name 192.168.1.168; # 这是HOST机器的外部域名,用地址也行

    location / {
        proxy_pass http://127.0.0.1:8080; # 这里是指向 gunicorn host 的服务地址
        proxy_set_header Host $host;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    }
  }

然后输入:systemctl restart nginx 重启nginx,即可在浏览器中看到hello world的显示,表示配置成功。

注:本篇就将环境配置基础内容记录完毕,后续涉及到具体的开发环境的配置和自启动部分,后续更新。

发表评论

电子邮件地址不会被公开。 必填项已用*标注