历经两天两夜,终于在服务器上部署了flask,真的是一路艰辛。期间重装系统200次,重装软件1000次,终于能跑通了,真的是累成狗,但最终是搭建好了,不然我真的很崩溃,这也告诉大家不要轻言放弃。好下面开始详细描述一下各个步骤
选择好软硬件环境
这个非常重要,我这选择环境遇到很多的坑,我从centos6一直到centos8都试了一遍,还有python的版本,从3.5到3.10,我这边成功突围,大家参照我的,省去很多的麻烦,我直接说我现在成功搭建的版本
系统:centos7.9
python版本:3.9.5
好,大家选择好了版本,下面就进行相关的配置
一、安装python3.9.5
安装之前首先要安装各种依赖包
yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc make
接下来下载python3.9.5
wget https://www.python.org/ftp/python/3.9.5/Python-3.9.5.tar.xz
然后解压
tar -xvJf Python-3.9.5.tar.xz
进入Python-3.9.5
cd Python-3.9.5
./configure prefix=/usr/local/python3
make && make install
接下来添加软连接
ln -s /usr/local/python3/bin/python3 /usr/bin/python3
添加pip3连接
ln -s /usr/local/python3/bin/pip3 /usr/bin/pip3
接下来安装nginx
yum install nginx
二、创建站点目录
mkdir /var/www
在var目录下创建www,里面就是咱们的站点了
cd /var/www
mkdir mysite
进入www目录,然后创建mysite项目目录
接下来创建虚拟目录
python3 -m venv venv
激活虚拟目录
source venv/bin/activate
退出激活
deactivate
三、安装flask目录
在虚拟环境下安装
pip3 install flask
注意可能会遇到错误,需要安装依赖
yum install libffi-devel
然后重装python
./configure prefix=/usr/local/python3
make && make install
四、uwsgi配置
先退出虚拟环境
deactivate
安装uwsgi
pip3 install uwsgi
然后激活虚拟环境,不记得的话往上翻
进入mysite目录
cd /var/www/mysite
创建uwsgi.ini
vim uwsgi.ini
[uwsgi]
enable-theads=true
thunder-lock=true
vhost=true
socket=:8000
chdir=/var/www/mysite
#这条需要你的启动文件叫run.py,也可以自己起,根据自己的文件名
wsgi-file=/var/www/mysite/run.py
callable=app
master=true
buffer-size=65535
workers=4
max-requests=300
将上面复制进去,然后保存退出
接下来配置nginx
进入配置目录
cd /etc/nginx
打开nginx.conf
vim nginx.conf
编辑相关
接下来进入conf.d
cd conf.d
新建mysite.conf
vim mysite.conf
将下面内容复制进去
upstream mysite{ server 127.0.0.1:8000; }
server{
# 可以写80,就是默认的了,写地址就不用加端口了
listen 9000;
server_name 180.76.145.20;
charset utf-8;
access_log /var/log/nginx/log/mysite.access.log main;
error_log /var/log/nginx/log/mysite.error.log warn;
location / {
uwsgi_pass 127.0.0.1:8000;
include /etc/nginx/uwsgi_params;
}
}
好的,以上步骤完成了,基本上也就配置好了
在www、目录下启动uwsgi
uwsgi –ini mysite/uwsgi.ini
启动nginx
nginx
接下来就可访问了