- 利用Flask搭建微电影视频网站(十六):项目部署上线(Cent
- (旧)3- Flask构建弹幕微电影网站- 课程介绍
- (旧) 1- 大家一起学:Flask构建弹幕微电影网站-(一)-
- 利用Flask搭建微电影视频网站(一):项目介绍
- 1、Flask构建弹幕微电影网站-环境搭建项目目录分析
- 5、Flask构建弹幕微电影网站-搭建前台页面-会员登录注册和会
- 6、Flask构建弹幕微电影网站-搭建前台页面-电影列表、搜索播
- 7、Flask构建弹幕微电影网站-搭建后台页面-后台登陆、后台主
- 10、Flask构建弹幕微电影网站-搭建后台页面-会员管理、评论
- 11、Flask构建弹幕微电影网站-搭建后台页面-收藏管理、日志
关于博主
努力与运动兼备~~~有任何问题可以加我好友或者关注微信公众号,欢迎交流,我们一起进步!
微信公众号: 啃饼思录

QQ: 2810706745(啃饼小白)
写在前面
本篇笔记,我们将介绍如何把我们的微电影视频网站部署上线。
安装LNMP环境
首先我们需要在云服务器上安装LNMP,所谓的LNMP是指:Centos,Nginx,Mysql和Python:

我们需要的配置:
服务器系统:Centos7
数据库: Mysql
编程语言: Python3.6
队列缓存: Redis
web反向代理: Nginx
依赖环境: flask ,mysql-connector-python ,wtform ,sqlachemy ,redis
整个部署流程:

一些常用的Centos命令
ssh root@ip # 查看服务器配置
cat /etc/redhat-release # 查看内存剩余
free -m # 查看硬盘剩余
df -h
1、安装python3.6的依赖包
yum -y install openssl-devel bzip2-devel expat-devel gdbm-devel readline-devel
sqllite-devel
2、下载并解压Python3.6.4
tar -zxf python-3.6.4.tgz
cd python-3.6.4/
./configure --prefix=/usr/local
yum -y install gcc gcc-c++
make altinstall
3、采用软连接配置Python
cd /usr/bin
mv python python.backup
# 创建软连接
ln -s /usr/local/bin/python3.6 /usr/bin/python
ln -s /usr/local/bin/python3.6 /usr/bin/python3
cd /usr/bin/
ls yum*
vim yum
修改第一行尾python2:

然后就是:
vim yum-config-manager
修改第一行尾python2:

。。。。。。
运行下面所有的命令,把它们第一行尾的python都改成Python2:
vim yum-debug-restore
vim yum-group-manager
vim yum-build-dep
vim yum-debug-dump
vim yumdownloader
vim /usr/libexec/urlgrabber-ext-down
然后输入Python发现就是Python3.6.4的版本了。
安装MySQL
直接利用命令进行安装:
yum -y install mariadb-server # 安装MySQL服务
systemctl start mariadb.service # 启动服务
enable mariadb.service # 设置开机自启
然后修改密码:
mysqladmin -uroot password "root"
mysql -uroot -proot
接下来更改MySQL的字符集:
vim /etc/my.cnf
character--set-server=utf8 # 更改字符集
然后重启服务器:
systemctl restart mariadb.service
安装Nginx
拷贝Nginx到我们的服务器上面:
scp nginx.tar.gz root@192.168.x.x:/root/
然后安装它的依赖包:
yum -y install gcc gcc-c++ openssl-devel pcre-devel httpd-tools
接下来进行解压安装:
tar -zxf nginx.tar.gz
cd nginx/
useradd nginx
./configure --prefix=/usr/local/nginx --user=nginx --group=nginx --with-http_ssl_module --with-http_mp4_module --with-http_flv_moudle
make && make install # 安装和编译
ln -s /usr/local/nginx/sbin/nginx /usr/sbin/
最后启动我们的nginx服务器:
nginx
netstat -anptu | grep nginx
部署微电影视频网站
部署的整个流程就是这样:

1、引入Manager
首先安装Flask-Script,然后在manage.py中导入Manager:
from app import app
from flask_script import Manager
manage = Manager(app)
if __name__ == '__main__':
app.run()
2、修改服务器端口

端口需要和服务器保持一致,同时关闭调试模式。
3、拷贝依赖文件到服务器
首先导出项目依赖的各种包req.txt
scp req.txt movie.sql root@192.168.xx/root/
当然如果你不熟悉,那你可以使用xshell来上传文件。
4、新建虚拟环境
mkvirtualenv --python=python3 movie
5、安装依赖的包
pip install -r req.txt
如果安装太慢就可以使用豆瓣源进行加速:
pip install -i http://pypi.douban.com/simple/ --trusted-host pypi.douban.com -r req.txt
6、创建数据库并导入数据
create database movie;
use movie;
source /root/movie.sql;
7、将项目拷贝到nginx的html目录
cp -r movie /usr/local/nginx/html 或者 cp -r movie /usr/share/nginx/html
8、查看nginx的目录
cp nginx.conf /usr/local/nginx/conf/
ubuntu: cp nginx.conf /etc/nginx/conf.d
9、运行项目
cd /usr/local/nginx/html/movie_project
python manage.py runserver
然后开启四个进程,修改端口:
nohup python manage.py runserver -h 192.168.x.x -p admin

10、上传nginx的配置文件
worker_processes 4;
events {
worker_connections 262180;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
limit_conn_zone $binary_remote_addr zone=addr:5m;
upstream movie {
server 127.0.0.1:5001;
server 127.0.0.1:5002;
server 127.0.0.1:5003;
server 127.0.0.1:5004;
}
server {
listen 80;
server_name movie.licheetools.top;
location / {
root html;
index index.html index.htm;
proxy_pass http://movie;
}
location ~ \.flv$ {
flv;
limit_conn addr 4;
limit_rate 1024k;
rewrite ^/static/uploads/(.+?).flv$ /movie/app/static/uploads/$1.flv permanent;
}
location ~ \.mp4$ {
mp4;
limit_conn addr 4; # 同时允许在线观看4个页面
limit_rate 1024k; # 最高下载速度1M/s
rewrite ^/static/uploads/(.+?).mp4$ /movie/app/static/uploads/$1.mp4 permanent;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
}
11、刷新Nginx
最后我们使用nginx -s reload
来刷新我们的Nginx,然后你就可以在浏览器输入你的域名就可以访问你的微电影视频网站了。
至此,微电影视频网站项目我们就完成了开发,回顾这一路,坎坷确实很多,但是我们还是坚持了下来,最后项目成功上线,这其中的喜悦之情真是难以言表啊。
最后欢迎大家加我好友或者关注微信公众号,进行交流,我们一起进步!
网友评论