基于django的视频点播网站开发-step15-项目部署
项目部署是一个比较大的工程,但这是笔者最喜欢的一个环节,因为在部署过程中,会遇到很多疑难问题,这些问题能促使我学到很多很多的技术。
项目部署,顾名思义,就是将自己的程序存放到远程服务器上面,让全世界的网友都能访问到。在部署之前,我们需要提前准备好一些部署的知识,包括购买服务器、安装服务器软件、服务器配置、等等。
笔者专门购买了服务器来部署我们的视频播放网站,为了避免备案,笔者购买了国外的服务器。
购买服务器
购买服务器的地方有很多,国内有阿里云、腾讯云、百度云等,国外有aws、bwh、Linode等等。如果你是学生的话,建议购买 阿里云 的服务器,因为阿里云有学生认证,打折幅度非常大。
操作系统建议选择ubuntu系统
笔者购买的是aws服务器,操作系统是Ubuntu16.04
安装软件
需要安装的软件有nginx、mysql、python、uwsgi、django,另外还有项目的依赖库。
在Ubuntu系统安装nginx非常简单,只需一行命令
sudo apt-get install nginx
nginx的常用命令有
sudo service nginx start # 启动nginx sudo service nginx restart # 重启nginx sudo service nginx stop # 关闭nginx
安装mysql
sudo apt-get install mysql-server
启动mysql
sudo service mysql start
安装uwsgi
pip3 install uwsgi
安装django
pip3 install Django
拉取代码
代码仓库为https://github.com/geeeeeeeek/videoproject.git
git clone https://github.com/geeeeeeeek/videoproject.git
项目里面 uwsgi.ini 为配置文件
[uwsgi] chdir = /var/www/videoproject module = videoproject.wsgi master = true processes = 2 socket = 127.0.0.1:8001 chmod-socket = 664 uid = www-data gid = www-data vacuum = true daemonize = %(chdir)/uwsgi.log
nginx就是通过该配置文件和uwsgi通信的,uwsgi是以socket方式运行。
然后运行该配置
uwsgi --ini uwsgi.ini
服务器配置
需要配置nginx
在/etc/nginx/sites-enabled/下新建配置文件video.conf,并写入
upstream django { server 127.0.0.1:8001; } server { listen 80; server_name yourhost.com; # 配置成你自己的域名 rewrite ^(.*) https://$host$1 permanent; } server { listen 443; server_name yourhost.com; # 配置成你自己的域名 ssl on; ssl_certificate /home/ubuntu/1_v.mypython.me_bundle.crt; # 配置成你自己的https证书 ssl_certificate_key /home/ubuntu/2_v.mypython.me.key; ssl_session_timeout 5m; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE; ssl_prefer_server_ciphers on; location /static/ { alias /var/www/videoproject/static/; } location /upload/ { alias /var/www/videoproject/upload/; } location / { include uwsgi_params; uwsgi_pass django; } }
nginx 与 uwsgi通信方式: server 127.0.0.1:8001
最后重启nginx即可。
访问页面
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
基于django的视频点播网站开发-step14-数据总览功能
数据总览功能,是对网站中产生的数据进行一个统计,统计出视频数、发布数、用户数、评论数,等等。让管理者对网站数据有一个清晰的认识,做到心中有数。 在本站中,笔者一共列举了下面几种数据:视频数、发布中未发布、用户数、用户新增、评论数、评论新增,等几项内容。 我们把所有的数据都封装到了一个函数里面,即 IndexView 它位于后台管理的首页。 path('', views.IndexView.as_view(), name='index'), IndexView代码如下 class IndexView(AdminUserRequiredMixin, generic.View): def get(self, request): video_count = Video.objects.get_count() video_has_published_count = Video.objects.get_published_count() video_not_published_count = Video.objects.get_not_published_count() user_count = ...
- 下一篇
Centos 7.X单机部署DB2 10.5
系统底层准备工作 安装jdk tar xvf jdk-7u79-linux-x64.tar.gz vi /etc/profile #设置JDK环境变量:vi /etc/profile 末尾添加JDK环境变量设置: JAVA_HOME=/usr/local/java JRE_HOME=/usr/local/java/jre CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin export JAVA_HOME JRE_HOME PATH CLASSPATH source /etc/profile#生效修改的配置文件 配置本地yum源 如果用的是网络源可忽略这一步 mount /dev/cdrom /media/ #挂载镜像 rpm --import /etc/pki/rpm-gpg/RPM* #引入K值 #配置yum源 vi /etc/yum.repos.d/rhel-media.repo [base] name=Server Local Sou...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Eclipse初始化配置,告别卡顿、闪退、编译时间过长
- Mario游戏-低调大师作品
- 2048小游戏-低调大师作品
- SpringBoot2初体验,简单认识spring boot2并且搭建基础工程
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- SpringBoot2整合Thymeleaf,官方推荐html解决方案
- Red5直播服务器,属于Java语言的直播服务器
- 设置Eclipse缩进为4个空格,增强代码规范
- CentOS8安装MyCat,轻松搞定数据库的读写分离、垂直分库、水平分库