今天小編給大家分享一下CentOS7怎么部署Flask的相關(guān)知識(shí)點(diǎn),內(nèi)容詳細(xì),邏輯清晰,相信大部分人都還太了解這方面的知識(shí),所以分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后有所收獲,下面我們一起來了解一下吧。
10年積累的做網(wǎng)站、成都做網(wǎng)站經(jīng)驗(yàn),可以快速應(yīng)對(duì)客戶對(duì)網(wǎng)站的新想法和需求。提供各種問題對(duì)應(yīng)的解決方案。讓選擇我們的客戶得到更好、更有力的網(wǎng)絡(luò)服務(wù)。我雖然不認(rèn)識(shí)你,你也不認(rèn)識(shí)我。但先網(wǎng)站制作后付款的網(wǎng)站建設(shè)流程,更有靈山免費(fèi)網(wǎng)站建設(shè)讓你可以放心的選擇與我們合作。
一、安裝apache
# yum install -y httpd httpd-devel
# systemctl start httpd.service # 啟動(dòng) # systemctl stop httpd.service # 關(guān)閉 # systemctl restart httpd.service # 重啟 # systemctl enable httpd.service # 開機(jī)自啟
防火墻開放80端口
# firewall-cmd --zone=public --add-port=80/tcp --permanent # firewall-cmd --reload
開啟apache,外網(wǎng)已經(jīng)可以通過ip訪問apache的默認(rèn)頁(yè)面了
二、安裝python36、pip3、virtualenv
# yum install -y epel-release # yum install -y python36 # python36 -v python 3.6.6
# yum install -y python36-setuptools # easy_install-3.6 pip # pip3 -v pip 18.1 from /usr/local/lib/python3.6/site-packages/pip-18.1-py3.6.egg/pip (python 3.6)
# pip3 install virtualenv
三、創(chuàng)建項(xiàng)目
創(chuàng)建flask項(xiàng)目(最簡(jiǎn)單的,一個(gè)項(xiàng)目文件夾、一個(gè)啟動(dòng)文件)
# mkdir /var/www/flask_test # 項(xiàng)目文件夾 # vi /var/www/flask_test/app.py # 啟動(dòng)文件
啟動(dòng)文件例子:
from flask import flask, request app = flask(__name__) @app.route('/') def hello_world(): return 'hello world' @app.route('/hello') def hello(): name = request.args.get('name','') return 'hello ' + name + '!' if __name__ == '__main__': app.run()
在項(xiàng)目文件夾下創(chuàng)建虛擬環(huán)境,安裝flask
# cd /var/www/flask_test # virtualenv py3env # 創(chuàng)建虛擬環(huán)境 # source py3env/bin/activate # 進(jìn)入虛擬環(huán)境 (py3env) # pip install flask # 安裝flask (py3env) # deactivate # 退出虛擬環(huán)境
四、在虛擬環(huán)境中用pip安裝mod_wsgi
# yum install -y python36-devel.x86_64 # 一個(gè)依賴,不安裝的話,下面pip會(huì)報(bào)錯(cuò)。。 # source py3env/bin/activate # 進(jìn)入虛擬環(huán)境 (py3env) # pip install mod_wsgi # 安裝mod_wsgi (py3env) # mod_wsgi-express install-module # 執(zhí)行該命令,把輸出內(nèi)容復(fù)制下來 loadmodule wsgi_module "/usr/lib64/httpd/modules/mod_wsgi-py36.cpython-36m-x86_64-linux-gnu.so" wsgipythonhome "/var/www/flask_test/py3env" (py3env) # deactivate # 退出虛擬環(huán)境
修改apache的配置
# vi /etc/httpd/conf/httpd.conf
復(fù)制上面得到的這行內(nèi)容,添加到配置文件的最后
復(fù)制代碼 代碼如下:
loadmodule wsgi_module "/usr/lib64/httpd/modules/mod_wsgi-py36.cpython-36m-x86_64-linux-gnu.so"
五、配置mod_wsgi
# vi /var/www/html/flask_test/app.wsgi
寫入以下內(nèi)容(根據(jù):)
activate_this = '/var/www/flask_test/py3env/bin/activate_this.py' with open(activate_this) as file_: exec(file_.read(), dict(__file__=activate_this)) import sys sys.path.insert(0, '/var/www/flask_test') from app import app as application
配置apache
# vi /etc/httpd/conf/httpd.conf
寫入以下內(nèi)容(根據(jù):)
servername example.com wsgiscriptalias / /var/www/flask_test/app.wsgi require all granted
ok了,啟動(dòng)apache,通過這臺(tái)服務(wù)器的ip就能訪問網(wǎng)頁(yè)了
測(cè)試一些app.py里面寫的兩個(gè)路徑
以上就是“CentOS7怎么部署Flask”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家閱讀完這篇文章都有很大的收獲,小編每天都會(huì)為大家更新不同的知識(shí),如果還想學(xué)習(xí)更多的知識(shí),請(qǐng)關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。