基于OSS搭建在线教育视频课程分享网站
OSS对象存储服务是海量、安全、低成本、高持久的存储服务。适合于存储大规模非结构化数据,如图片、视频、备份文件和容器/虚拟机镜像等。
安装nginx
wget https://nginx.org/download/nginx-1.20.2.tar.gz
yum -y install zlib zlib-devel gcc-c++ pcre-devel openssl openssl-devel
tar -zxvf nginx-1.20.2.tar.gz
cd nginx-1.20.2
./configure --prefix=/usr/local/nginx/ --with-http_ssl_module --with-http_stub_status_module
make
make install


执行如下命令,进入/usr/local/nginx/sbin目录。
cd /usr/local/nginx/sbin
执行如下命令,启动nginx。
./nginx
![]()
通过浏览器访问
http://localhost。返回如下页面,表明nginx安装成功。

创建前端页面
执行如下命令,在/usr/local/nginx/html/目录下创建新文件夹edu。
mkdir /usr/local/nginx/html/edu
执行以下命令,编辑index.html文件。
vim /usr/local/nginx/html/edu/index.html
示例代码
<!DOCTYPE html><html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>在线教育</title><meta name="keywords" content="在线教育"><meta name="description" content="在线教育"><meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=no"><!--Favicon--><link rel="shortcut icon" href="" title="Favicon"><style>@media all and (orientation : portrait) {/*竖屏*/.mypic {width: 80%;}}@media all and (orientation : landscape) {/*横屏*/.mypic {width: 40%;}}a {color: #000000;}a:link {color: #000000;}a:visited {color: #000000;}a:hover {color: #000000;}a:active {color: #000000;}</style></head><body style=" font-family: 'Microsoft JhengHei UI';"><div id="wrapper" style=" margin: 0 15px; padding: 15px 0; position: relative;"><div style="padding:20px;"><p><font size="10" color="green">在线教育网</font></p><p><font size="3" >您贴身的教育管家</font></p></div><p style="text-align:center"><font size="6" color="green">您可在此获取到丰富的教学视频,充分满足学习要求</font></p><div style="padding:50px;"><h1 style="text-align:center">精选课程</h1><p style="text-align:center">口碑好,效益佳</p><div><table style="float: center;"><tbody><tr><td><b><center> <div class="video"><video width="320" height="240" controls><source src="movie.mp4" type="video/mp4"></video><p>实战视频1</p><p>您可以在此视频学习相关内容1</p></div> </center></b></td><td><b></b><center><b> <div class="video"><video width="320" height="240" controls><source src="movie.mp4" type="video/mp4"></video><p>实战视频2</p><p>您可以在此视频学习相关内容2</p></div></b></center></td><td><b><center><div class="video"><video width="320" height="240" controls><source src="movie.mp4" type="video/mp4"></video><p>实战视频3</p><p>您可以在此视频学习相关内容3</p></div></center></b></td><td><b><center><div class="video"><video width="320" height="240" controls><source src="movie.mp4" type="video/mp4"></video><p>实战视频4</p><p>您可以在此视频学习相关内容4</p></div></center></b></td></tr></tbody></table></div><h1 style="text-align:center">观看金牌讲师直播</h1><p style="text-align:center">所有导师来自名企,有多年教学经验</p><div><table style="float: center;"><tbody><tr><td><b><center> <div class="video"><video width="320" height="240" controls><source src="movie.mp4" type="video/mp4"></video><p>张XX</p><p>擅长教学产品知识</p></div> </center></b></td><td><b></b><center><b> <div class="video"><video width="320" height="240" controls><source src="movie.mp4" type="video/mp4"></video><p>李X</p><p>多年web开发经验</p></div></b></center></td><td><b><center><div class="video"><video width="320" height="240" controls><source src="movie.mp4" type="video/mp4"></video><p>王X</p><p>专攻大数据计算</p></div></center></b></td><td><b><center><div class="video"><video width="320" height="240" controls><source src="movie.mp4" type="video/mp4"></video><p>刘XX</p><p>运营专家</p></div></center></b></td></tr></tbody></table></div><p style=" margin: 0 auto; text-align: center; "><img class="mypic" src=""style=" vertical-align: middle; text-align: center;"></p><p>更多:<a style=" font-size:14px; font-family: 'Microsoft JhengHei UI'" href="https://www.aliyun.com"target="_blank">aliyun.com</a></p><p>电话号码:xxxxx;</p></div></div></body></html>
添加完成后,按下Esc键,输入:wq后按下Enter键保存并退出。
通过浏览器访问
http://localhost/edu,访问在线教育网站。

在您的本机浏览器地址栏中,访问下方地址链接,进入后可看到预览的视频。
https://labfileapp.oss-cn-hangzhou.aliyuncs.com/storage/%E5%AF%B9%E8%B1%A1%E5%AD%98%E5%82%A8OSS%E4%BA%A7%E5%93%81%E8%A7%86%E9%A2%91.mp4
在预览的视频上,右键单击视频另存为,然后将视频保存在本地电脑中。
配置OSS存储
云小站_专享特惠_云产品推荐-阿里云
后续用了阿里云的对象存储产品,本地测试的同学可以自行搭建开源oss产品,如minio
在云产品资源列表的对象存储OSS区域,单击管理。

在文件列表页面,单击上传文件。扫描文件或扫描文件夹,上传刚刚保存至本地电脑中的视频。

在Bucket列表页面,找到创建的Bucket,然后在右侧的传输加速列下,单击开启。


在详情面板,将过期时间改为7200,单击复制URL,后续步骤要用。

在您的本机浏览器地址栏中,访问下方地址链接,然后选择任意地域,单击立即检测,可以查看不同区域使用传输加速前后的对比情况。
https://oss.console.aliyun.com/velocity-tool

替换视频内容为OSS
执行如下命令,编辑index.html文件。
vim /usr/local/nginx/html/edu/index.html
将其上方source src中的movie.mp4替换成修改后的文件URL

在您的本机浏览器地址栏中,输入http://ECS公网IP地址/edu,访问在线教育网站。
您可在网站中查看到播放相应的视频源,并实现一定的加速效果。
测试验证

OSS生命周期配置
OSS生命周期功能可按照规则将部分冷数据转储到低频或者归档中,可有效降低客户音视频存储成本。本步骤将指导您如何配置生命周期。
本实验以最后一次修改时间,超过一定时间数据未修改的,数据将自动转换为低频访问为例。 如下图所示,策略选择配置到整个Bucket,文件时间策略选择指定天数,生命管理周期选择修改时间,天数默认为30天,数据自动转换类型选择低频访问,单击确定。


相关文章:
基于OSS搭建在线教育视频课程分享网站
OSS对象存储服务是海量、安全、低成本、高持久的存储服务。适合于存储大规模非结构化数据,如图片、视频、备份文件和容器/虚拟机镜像等。 安装nginx wget https://nginx.org/download/nginx-1.20.2.tar.gz yum -y install zlib zlib-devel gcc-c pcre-devel open…...
CentOS 7 下升级 OpenSSL
升级openssh,下载:https://download.csdn.net/download/weimeilayer/89935114 上传到服务器,然后执行命令 rpm -Uvh *.rpm --nodeps --force安装依赖 yum -y install gcc perl make zlib-devel perl-CPAN下载安装包:https://github.com/ope…...
线上 Dump
优质博文:IT-BLOG-CN 一、简介 机器宕机或者请求很慢最常出现的几种问题:针对代码bug或者qps过高造成的。 【1】cpu过高致内存耗尽OOM,堆区对象回收不及时cpu被打满 【2】死锁抢用资源导致cpu过高致耗尽 【3】内存泄漏: 堆内存由…...
AcWing 1303:斐波那契前 n 项和 ← 矩阵快速幂加速递推
【题目来源】https://www.acwing.com/problem/content/1305/http://poj.org/problem?id3070【题目描述】 大家都知道 数列吧,。现在问题很简单,输入 和 ,求 的前 项和 。【输入格式】 共一行,包含两个整数 和 。【输出格式】…...
2024 Rust现代实用教程:1.2编译器与包管理工具以及开发环境搭建
文章目录 一、Rust的编译器rustc二、开发环境搭建三、Rust的包管理工具Cargo四、项目结构1.Cargo.toml文件2.创建一个可执行文件项目3.创建一个库项目 参考 一、Rust的编译器rustc 查看版本 rustc-version编译生成二进制文件 rustc -o output filename filename.rs编译生成库…...
人工智能原理实验一:知识的表示与推理实验
一、实验目的 本实验课程是计算机、智能、物联网等专业学生的一门专业课程,通过实验,帮助学生更好地掌握人工智能相关概念、技术、原理、应用等;通过实验提高学生编写实验报告、总结实验结果的能力;使学生对智能程序、智能算法等有…...
自学C语言——VS实用调试技巧总结
接上一篇:自学C语言——扫雷游戏(无递归) 什么是bug “bug”本意是昆虫或虫子,一般指电脑系统或程序中,隐藏着一些未被发现的缺陷或者问题,简称程序漏洞。 第一代的计算机是由许多庞大且昂贵的真空管组成&…...
VC2012创建弹出式菜单
首先为视类添加鼠标右键单击处理函数,添加如下代码, void CMFCApplication1View::OnRButtonDown(UINT nFlags, CPoint point) {// TODO: 在此添加消息处理程序代码和/或调用默认值CView::OnRButtonDown(nFlags, point);CMenu menu;menu.CreatePopupMenu…...
Google 第三季度季报出炉
每周跟踪AI热点新闻动向和震撼发展 想要探索生成式人工智能的前沿进展吗?订阅我们的简报,深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同,从行业内部的深度分析和实用指南中受益。不要错过这个机会,成为AI领…...
入职总结(更新中)
【STEP 1/3】短信1之后:材料准备阶段 填写 新进教职工“入职一件事”线上办理 系统档案转递证明(需档案到校); 档案:为规范管理,请拟报到人员将个人档案寄至浙江财经大学人事处,有专职人员进行…...
@DeleteMapping和@PostMapping和@GetMapping和Content-Type使用记录
代码例子,有注释大家可以自己试一下 RestController RequestMapping(value "demo") public class TestController {//Content-Type:application/x-www-form-urlencoded;表单提交form-dataPostMapping("/demo1")public String test…...
unity 中使用zeroMq和Mqtt 进行通讯
最近我在做一个车上的HMI项目,也就是车机应用,需要与云端和域控进行通信。HMI的功能已经外包了,但消息的统一层留给我自己来做。因为项目组其他人都没有经验,所以这个任务就落到了我头上,尽管我自己也没有太多经验&…...
四、k8s快速入门之Kubernetes资源清单
kubernetes中的资源 ⭐️ k8s中所有的内容都抽象为资源,资源实列化之后,叫做对象 1️⃣名称空间级别 ⭐️ kubeadm在执行k8s的pod的时候会在kube-system这个名称空间下执行,所以说当你kubectl get pod 的时候是查看不到的查看的是默认的po…...
掌握ElasticSearch(六):分析过程
文章目录 一、什么是分析1. 字符过滤 (Character Filtering)2. 分词 (Breaking into Tokens)3. 词条过滤 (Token Filtering)4. 词条索引 (Token Indexing) 二、内置分析器分类1. 标准分析器 (Standard Analyzer)2. 简单分析器 (Simple Analyzer)3. 语言分析器 (Language Analyz…...
【设计模式】使用python 实践框架设计
单一职责原则(SRP):一个类应该只有一个职责,意味着该类只应该有一个引起变化的原因。这使得代码更易于维护和理解。 开放封闭原则(OCP):软件实体(类、模块、函数等)应该…...
Apache paimon-CDC
CDC集成 paimon支持五种方式通过模式转化数据提取到paimon表中。添加的列会实时同步到Paimon表中 MySQL同步表:将MySQL中的一张或多张表同步到一张Paimon表中。MySQL同步数据库:将MySQL的整个数据库同步到一个Paimon数据库中。API同步表:将您的自定义DataStream输入同步到一…...
如何分析算法的执行效率和资源消耗
分析算法的执行效率和资源消耗可以从以下几个方面入手: 一、时间复杂度分析 定义和概念 时间复杂度是衡量算法执行时间随输入规模增长的速度的指标。它通常用大 O 符号表示,表示算法执行时间与输入规模之间的关系。例如,一个算法的时间复杂度为 O(n),表示该算法的执行时间…...
提示工程(Prompt Engineering)指南(进阶篇)
在 Prompt Engineering 的进阶阶段,我们着重关注提示的结构化、复杂任务的分解、反馈循环以及模型的高级特性利用。随着生成式 AI 技术的快速发展,Prompt Engineering 已经从基础的单一指令优化转向了更具系统性的设计思维,并应用于多轮对话、…...
音视频入门基础:FLV专题(19)——FFmpeg源码中,解码Audio Tag的AudioTagHeader,并提取AUDIODATA的实现
一、引言 从《音视频入门基础:FLV专题(18)——Audio Tag简介》可以知道,未加密的情况下,FLV文件中的一个Audio Tag Tag header AudioTagHeader AUDIODATA。本文讲述FFmpeg源码中是怎样解码Audio Tag的AudioTagHead…...
前端零基础入门到上班:【Day3】从零开始构建网页骨架HTML
HTML 基础入门:从零开始构建网页骨架 目录 1. 什么是 HTML?HTML 的核心作用 2. HTML 基本结构2.1 DOCTYPE 声明2.2 <html> 标签2.3 <head> 标签2.4 <body> 标签 3. HTML 常用标签详解3.1 标题标签3.2 段落和文本标签3.3 链接标签3.4 图…...
C++_核心编程_多态案例二-制作饮品
#include <iostream> #include <string> using namespace std;/*制作饮品的大致流程为:煮水 - 冲泡 - 倒入杯中 - 加入辅料 利用多态技术实现本案例,提供抽象制作饮品基类,提供子类制作咖啡和茶叶*//*基类*/ class AbstractDr…...
反向工程与模型迁移:打造未来商品详情API的可持续创新体系
在电商行业蓬勃发展的当下,商品详情API作为连接电商平台与开发者、商家及用户的关键纽带,其重要性日益凸显。传统商品详情API主要聚焦于商品基本信息(如名称、价格、库存等)的获取与展示,已难以满足市场对个性化、智能…...
DockerHub与私有镜像仓库在容器化中的应用与管理
哈喽,大家好,我是左手python! Docker Hub的应用与管理 Docker Hub的基本概念与使用方法 Docker Hub是Docker官方提供的一个公共镜像仓库,用户可以在其中找到各种操作系统、软件和应用的镜像。开发者可以通过Docker Hub轻松获取所…...
Java 8 Stream API 入门到实践详解
一、告别 for 循环! 传统痛点: Java 8 之前,集合操作离不开冗长的 for 循环和匿名类。例如,过滤列表中的偶数: List<Integer> list Arrays.asList(1, 2, 3, 4, 5); List<Integer> evens new ArrayList…...
Redis相关知识总结(缓存雪崩,缓存穿透,缓存击穿,Redis实现分布式锁,如何保持数据库和缓存一致)
文章目录 1.什么是Redis?2.为什么要使用redis作为mysql的缓存?3.什么是缓存雪崩、缓存穿透、缓存击穿?3.1缓存雪崩3.1.1 大量缓存同时过期3.1.2 Redis宕机 3.2 缓存击穿3.3 缓存穿透3.4 总结 4. 数据库和缓存如何保持一致性5. Redis实现分布式…...
多场景 OkHttpClient 管理器 - Android 网络通信解决方案
下面是一个完整的 Android 实现,展示如何创建和管理多个 OkHttpClient 实例,分别用于长连接、普通 HTTP 请求和文件下载场景。 <?xml version"1.0" encoding"utf-8"?> <LinearLayout xmlns:android"http://schemas…...
线程同步:确保多线程程序的安全与高效!
全文目录: 开篇语前序前言第一部分:线程同步的概念与问题1.1 线程同步的概念1.2 线程同步的问题1.3 线程同步的解决方案 第二部分:synchronized关键字的使用2.1 使用 synchronized修饰方法2.2 使用 synchronized修饰代码块 第三部分ÿ…...
基于Uniapp开发HarmonyOS 5.0旅游应用技术实践
一、技术选型背景 1.跨平台优势 Uniapp采用Vue.js框架,支持"一次开发,多端部署",可同步生成HarmonyOS、iOS、Android等多平台应用。 2.鸿蒙特性融合 HarmonyOS 5.0的分布式能力与原子化服务,为旅游应用带来…...
在WSL2的Ubuntu镜像中安装Docker
Docker官网链接: https://docs.docker.com/engine/install/ubuntu/ 1、运行以下命令卸载所有冲突的软件包: for pkg in docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc; do sudo apt-get remove $pkg; done2、设置Docker…...
Element Plus 表单(el-form)中关于正整数输入的校验规则
目录 1 单个正整数输入1.1 模板1.2 校验规则 2 两个正整数输入(联动)2.1 模板2.2 校验规则2.3 CSS 1 单个正整数输入 1.1 模板 <el-formref"formRef":model"formData":rules"formRules"label-width"150px"…...
