Centos7 搭建flask 應用 nginx + uwsgi + flask


一. 安裝 flask

  注: python3 + pip3 安裝,參考:  https://www.cnblogs.com/grayhuang/p/13443801.html

 

  

執行  pip3 install flask

 

  校驗 flask 是否安裝成功:  ( import flask ,沒報錯即表示安裝成功) 

  

  

  創建一個hello.py的文件,copy下面的內容到文件中

1 from flask import Flask
2 app = Flask(__name__)
3 @app.route("/")
4 
5 def hello():
6     return "Hello World!"
7 
8 if __name__ == "__main__":
9     app.run(host='0.0.0.0', port=8080)

 

  然后執行python3 hello.py

  clip_image025

  clip_image026

 

二. 安裝 nginx

安裝基礎包:

缺少gcc,沒法make,所以安裝gcc

yum -y install gcc

 

 

 安裝ssl

yum -y install openssl-devel

 

 

 安裝zlib

yum install zlib 
yum install zlib-devel

 

 

安裝 libffi

yum -y install libffi-devel

 

 

安裝nginx  -- 一般 centOS 自帶安裝包

yum -y install nginx

 

 

 nginx 管理服務命令

systemctl start nginx #開啟nginx服務
systemctl stop nginx #停止nginx服務
systemctl restart nginx #重啟nginx服務

 開啟nginx后,瀏覽器中輸入服務器ip地址,能夠打開 

 

三. 安裝 uwsgi  

pip3 install uwsgi

 

 

 

四.配置

1. 在web 項目根目錄中,創建一個名為uwsgi.ini的文件,這是uwsgi的配置文件,文件內容:

[uwsgi]
# uwsgi 啟動時所使用的地址與端口 (需要在 nginx 配置匹配)
socket = 127.0.0.1:8080	

#虛擬環境目錄 (如果有)
#home = /root/app/test

#項目目錄
pythonpath = /root/app/test

#指向網站訪問根目錄
chdir = /root/app/test

#python啟動程序文件
wsgi-file = test.py

#python程序內用於啟動的application變量名
callable = app

#處理器數
processes = 4 

#線程數
threads = 2 

#狀態監測地址
stats = 127.0.0.1:9191 

 

 

2.啟動uwsgi.ini 

uwsgi --ini xxx.ini >>> 進入網站項目目錄,執行命令務

 

uwsgi --stop xxx.pid >>> 停掉uwsig
uwsgi --reload xxx.pid >>> 重啟
killall -s INT /usr/local/bin/uwsgi >>> 殺掉線程,停止服務

 

3.修改 nginx 配置文件  nginx.conf ,一般默認在 /etc/nginx

 

 

 

  3.1 修改server_name后的的值為雲服務的公網IP

server_name  xxx.xxx.xxx.xxx; 

 

 

  3.2 在server中添加:

access_log  /root/app/test/logs/access.log;
error_log  /root/app/test/logs/error.log;

 

 

  3.3 在location中添加:

include     uwsgi_params;
uwsgi_pass      127.0.0.1:8001;           --- uwsgi 服務地址與端口, nginx訪問 uwsgi本地連接即可
uwsgi_param UWSGI_PYHOME /root/app/test;  --- python 執行目錄
uwsgi_param UWSGI_CHDIR  /root/app/test;  --- 應用目錄
uwsgi_param UWSGI_SCRIPT app:app;

 

 

 3.4 修改后保存並退出,重啟nginx服務

./nginx -t               >>> 選進入 nginx 執行目錄 /usr/sbin/ ,執行命令先檢查配置文件是否有錯,沒有錯就可以啟動 web 服務
./nginx                  >>> 啟動nginx 
./nginx -s reload        >>> 重啟nginx命令(注意:nginx啟動時,才能使用功能該命令,否則會報錯)
./nginx -s stop          >>> 停止

 

 

4. 通過公網地址訪問 web 服務 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM