1. 程式人生 > 其它 >在ubuntu上通過nginx + uwsgi 執行 flask

在ubuntu上通過nginx + uwsgi 執行 flask

安裝nginx:

apt-get install nginx
#如果是使用本機安裝測試,由於預設不是最高許可權使用以下命令即可:
sudo apt-get install nginx 

安裝uwsgi:

pip install uwsgi
#檢視是否安裝成功
uwsgi --version

配置nginx:

cd /etc/nginx/conf.d
vim conf_name.conf <建立一個配置檔案,名字隨便起>
#如果沒有許可權 切記:
sudo vim conf_name.conf

nginx配置內容:

server {
    listen 80;  #監聽伺服器的80埠
server_name 127.0.0.1; #你的域名,前提是你要將你的域名解析到你的伺服器的ip地址 charset utf-8; location / { include /etc/nginx/uwsgi_params; #新增uwsgi引數 uwsgi_pass 127.0.0.1:5000; #你的Flask應用執行埠,和上面的對應 } }
# *注:公司的伺服器可能需要對外開放 80 端口才能實現本地遠端訪問

配置uwsgi:

[uwsgi]
# socket = 127.0.0.1:5000 #如果要改埠,記得和上面nginx配置的uwsgi_pass 埠一定要一致 
socket = 0.0.0.0:5000 #監控公網 ;將Flask應用執行在這個埠 master = true wsgi-file = main_app.py # flask專案的檔名字 ;後端檔名稱 callable = app ;設定在收到請求時,uWSGI載入的模組中哪個變數將被呼叫,預設是名字為“application”的變數。即是: app = Flask(__name__) processes = 4 threads = 2 daemonize = server.log ;日誌儲存檔名稱 【位置預設在app.ini 目錄下】

啟動Nginx

# 如果以及啟動可以直接重啟
service nginx start #
啟動nginx #或則 service nginx restart 重啟nginx

啟動uwsgi

#通過uwsgi配置檔案啟動 flask
uwsgi <自己命名的寫好uwsgi配置的檔名>.ini
或者
uwsgi -d --ini test.ini # <自己命名的寫好uwsgi配置的檔名>.ini

# 結束程序任務
sudo pkill -f uwsgi -9
#檢視程序
ps aux | grep uwsgi