nginx+uwsgi+python+flask環境搭建

@(tigerfive)[學習筆記][flask][python][環境搭建]
1.環境的準備
yum -y install gcc gcc-c++ zlib zlib-devel openssl openssl-devel pcre pcre-devel GeoIP gd libXpm libxslt sqlite-devel nginx
systemctl restart nginx
檢測nginx
ps -ef | grep nginx 或 直接瀏覽器訪問
wget https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm
yum -y install mysql-community-server 安裝的是5.7
systemctl start mysqld systemctl enable mysqld
grep password /var/log/mysqld.log
mysqladmin -u root -p'原密碼' password '新密碼'
mysql -u root -p'新密碼'
檢測mysql
ps -ef | grep mysql 或者
wget https://www.python.org/ftp/python/3.6.0/Python-3.6.0.tgz
2.安裝python3.6
tar xvf Python-3.6.0.tgz
cd Python-3.6.0
./configure --prefix=/usr/local/python3.6 && make && make install
3.刪除2.7的命令鏈接,並新建鏈接
rm -rf /usr/bin/python
ln -s /usr/local/python3.6/bin/python3.6 /usr/bin/python
4.修改環境變量
vim ~/.bash_profile
PATH=$PATH:$HOME/bin:.usr/local/python3.6/bin
5.解決yum失效問題
vim /usr/bin/yum 修改解釋器爲python2.7
6.測試python是否安裝成功
python -V
7.使用pip安裝python模塊
rm -rf /usr/bin/pip
ln -s /usr/local/python3.6/bin/pip3.6 /usr/bin/pip
8.安裝flask
pip install flask
9.創建項目目錄
mkdir /root/flask_pro
vim /root/flask_pro/flask_app.py
#vim /root/flask_pro/flask_app.py
from flask import Flask, request
app = Flask(name)br/>@app.route('/helloworld/')
def helloword():
return 'hello world'
if name == 'main' :
app.run(host='0.0.0.0', port=5005)
測試:python flask_app.py
http://+ip/域名:5005/*/
10.安裝uwsgi 是python的web容器
pip install uwsig
11.配置uwsgi
vim /root/flask_pro/uwsgi.ini
[uwsgi]
socket=127.0.0.1:5005
chdir=/root/flask_pro/
wsgi-file=flask_app.py
callable=app
processes=2
threads=2
buffer-size=65536
12.nginx配置文件:
#vim /usr/local/nginx/conf/nginx.conf 添加一個虛擬主機,添加到default server前面
server {
listen 80;
server_name xiangmu.buy360.xyz;

    location / {
        include  uwsgi_params;
        uwsgi_pass  127.0.0.1:5005;
    }
}

注意:添加內容後要把nginx.conf中原先的 server{ listen 80;……} 配置刪除或註釋掉。
13.uwsgi --ini /root/flask_pro/uwsgi.ini &
實際使用要把上面的命令寫到開機啓動文件內:rc.local
14.systemctl restart nginx
15.測試:http://192.168.100.10/helloworld/

項目測試
1 拷貝樂居項目 到ls /root/flask_pro/
[root@localhost flask_pro]# ls
app flask_app.py manage.py migrations requirements.txt tests uwsgi.ini venv

而後安裝依賴包。
#pip install -r requirements.txt

查看flask項目使用的哪個端口:
#cat manage.py 修改如下內容
if name == 'main':
manager.run(host='0.0.0.0',port=5000)

2 修改初始化文件,指向樂居
vim uwsgi.ini
[uwsgi]
socket=127.0.0.1:5000
chdir=/root/flask_pro/
wsgi-file=manage.py
callable=app
processes=2
threads=2
buffer-size=65536

3 修改nginx端口轉發
server {
listen 80;
server_name xiangmu.buy360.xyz;

    location / {
        include  uwsgi_params;
        uwsgi_pass  127.0.0.1:5000;
    }
}

4 python 加載uwsgi.ini
#uwsgi -d --ini /root/flask_pro/uwsgi.ini

做開機啓動:
#vim /etc/rc.local 追加如下內容
uwsgi -d --ini /root/flask_pro/uwsgi.ini
#chmod +x /etc/rc.d/rc.local
#systemctl enable rc-local

5 重啓nginx,並訪問。
#systemctl restart nginx
http://xiangmu.buy360.xyz

看到
“RESTFul API 開發測試”
即可。

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