服務器部署——nginx uwsgi flask安裝 配置 部署(Linux-Ubuntu)

nginx安裝:

apt-get install nginx

uwsgi安裝:

pip install uwsgi

sudo apt-get install uwsgi-plugin-python #解決python與uwsgi兼容問題,配合uwsgi中 plugins = python使用

 

nginx配置:

打開nginx配置文件:

vim /etc/nginx/nginx.conf

可查找到:include /etc/nginx/sites-available/default;  告訴我們可以到該路徑下去配置

vim /etc/nginx/sites-available/default

添加代碼如下:

server {
  # 監聽80端口, 瀏覽器http請求默認端口爲80
  listen  80;

  # 監聽本機所有ip, 可指定本機ip如:192.168.1.110
  server_name 0.0.0.0;


  location / {

    # 指定通信對象爲uwsgi,即數據向uwsgi轉發
    include      uwsgi_params;

    # 指定uwsgi 的ip:port 的接收地址
    uwsgi_pass   127.0.0.1:5001;

    # 指定python項目的運行環境
    # 也可通過uwsgi中的virtualenv指定項目環境
    # 默認爲系統python主環境
    # 此處指定爲自建虛擬環境venv
    uwsgi_param UWSGI_PYHOME /home/reidlv/venv;

    # 指定flask類型的項目根目錄
    uwsgi_param UWSGI_CHDIR  /home/reidlv/flaskspace/test-web;

    # 指定flask項目的啓動文件 
    # manage: /home/reidlv/flaskspace/test-web/manage.py
    # manage.py 中包含app變量 (app = Flask(__name__))
    uwsgi_param UWSGI_SCRIPT manage:app;
  }
}

至此nginx配置完成。

 

uwsgi配置:

cd /home/reidlv/flaskspace/test-web

mkdir WSGI

touch WSGI/uwsgi.ini

vim uwsgi.ini

添加代碼如下:

[uwsgi]

# 配合sudo apt-get install uwsgi-plugin-python, 該配置不添加,偶爾會報錯
plugins = python                         

# 接收通訊地址, 與nginx配置中的 uwsgi_pass   127.0.0.1:5001; 對應
socket = 127.0.0.1:5001                      

# 項目主目錄
chdir = /home/reidlv/flaskspace/test-web

# 項目啓動文件
wsgi-file = manage.py

# 主應用名
callable = app

# 開啓進程數
processes = 4

# 開啓線程數
threads = 2

# 日誌處理
stats = 127.0.0.1:9191

啓動服務:

sudo service nginx start

uwsgi /home/reidlv/flaskspace/test-web/WSGI/uwsgi.ini

若命令正常啓動,恭喜配置成功。瀏覽器請求test-web所在主機ip即可成功訪問。

若報錯,請查看端口是否被佔用,以及以上參數是否配置正確。

若有錯誤,還請各位多多告知,以免貽害廣大同胞。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章