使用网盘不限速,云开发者都用这一招

在现实世界里,很多现实里的场景和物品都逐渐“云”化。

最直观的一个解释,就是我们几乎人人都在使用网盘来存储数据、文档、音视频和各类安装包。

用网盘是挺方便的。但有个让人头疼的问题,就是很多免费网盘对上传下载速度限制得厉害。

比如你急着要下一个大文件,或者想快点把照片视频备份到网盘上,结果它慢得像蜗牛爬,多烦人啊……

为啥会这样?主要是因为网盘公司要省钱。

他们得买服务器,付网络带宽费,这些都要钱,所以他们就对免费用户的速度做了限制,想让更多人掏钱买会员,享受快速服务。这么一来,他们的成本能低点。

作为开发者,同学们思考过这个问题的解法吗?

今天这位同学,利用腾讯云服务器,搭建了一个专属于自己的、永不限速的网盘。

如果你也感兴趣,欢迎收藏,操作指南看这一篇就够啦!

01 什么是ZPan?

「ZPan」是一款追求简约轻量的基于云存储的网盘程序,并且它致力于打造成“不限速的网盘系统”它最大的特色是实现了用户「直连云存储」(比如腾讯云 COS等),不受服务器本身的带宽和流量限制,实现“不限速”且“不耗服务器流量”的文件上传和下载。

下面我就让大家看看,我是怎么样使用腾讯云的轻量应用服务器和cos搭建一个不限速网盘的。

ZPan致力于打造一款不限速的网盘系统,因此我们采用客户端直连云存储的方式进行设计。

目前ZPan支持所有兼容S3协议的云存储平台,您可以选用您熟悉的平台来驱动ZPan。

在线体验(体验账号:demo,密码:demo)

01 ZPan他是如何工作的?

ZPan本质上是一个URL签名服务器+可视化的文件浏览器。

因为我们采用直链的方式进行上传下载,所以为了保证上传下载的安全性,客户端用来上传下载的URL均需要服务端进行签名。

然后为了能给方便的管理用户上传的文件,我们就需要开发一个可视化的伪文件系统来进行文件管理。

  • saltbo/zpan
  • saltbo/zpan-front

02 ZPan的特色

  • 完全不受服务器带宽限制
  • 支持所有兼容S3协议的云存储
  • 支持文件及文件夹管理
  • 支持文件及文件夹分享(未登录可访问)
  • 支持文档预览及音视频播放
  • 支持多用户存储空间控制
  • 支持多语言

02 操作教程看这里就够!

01 准备工作

1、服务器

腾讯云的轻量应用服务器(自建应用必备服务器,其他公网服务器也可以)下面使用的机器配置是:2核4G6M。

2、应用镜像

宝塔Linux面板 7.6.0 腾讯云专享版

3、登陆宝塔面板配置LNMP环境(提醒登陆之前记得防控宝塔登录的端口)

4、腾讯云的对象存储(当然:Zpan支持所有兼容S3协议的云存储)长期使用建议使用编译安装。

02 安装教程

Linux安装

Docker安装

通过上面任意一种方法都可以安装服务。

防火墙管理

记得在访问的时候,要通过轻量的控制面板,和宝塔的面板的安全,放通两个防火墙。步骤截图。

新建数据库

因为我们使用宝塔新建数据就很简单了。直接添加数据库。

数据库建好之后,通过浏览器访问 ip:8222 即可进入配置步骤。

我们需要在DSN里填写上面新建的对应数据库信息。

数据库信息正确就可以配置管理员账号。

配置好了之后可以看到成功提示。

配置云存储(腾讯云COS)

登录之后可以看到菜单栏,非常的简洁。

  • 首先去腾讯云创建一个cos对象存储
  • 登录 对象存储控制台。
  • 在左侧导航中,单击【存储桶列表】,进入存储桶列表后,单击【创建存储桶】。在弹出的创建存储桶对话框中,配置如下信息:

基本信息

- 所属地域:请选择与您业务(或用户数量)相对集中的物理区域所对应的 COS 地域,设置后不可修改。

- 名称:请输入自定义的存储桶名称。设置后不可修改。

- 访问权限:存储桶默认提供三种访问权限:私有读写、公有读私有写和公有读写,设置后仍可修改。

- 请求域名:自动生成。创建完存储桶后,可以使用该域名对存储桶进行访问。

确认配置

对存储桶的配置信息进行确认。如需修改,单击【上一步】即可。

确认信息无误后,单击【确定】,即可创建存储桶。在存储桶列表界面中,可以看到刚才已创建的存储桶。

注意:

网盘关联的云存储设置为私有读,外链盘关联的云存储设置为公共读。

创建一个api密钥,访问腾讯云api,创建SecretId。

进入zpan控制台,选择存储管理,创建存储,填写COS的名称和接入点,SecretId SecretKey:

这里注意,接入点需要填写访问域名除cos名称后面的所有内容,如图部分:

高级配置可以配置个性化的一些信息:

可以上传文件可正常使用(注意调整用户的默认空间容量,默认为50M):

反向代理,域名访问

这里在宝塔面板-网站-添加站点新建网站,之后在网站设置中,配置反向代理,如图:

配置好反向代理之后,我们把域名解析到服务器就可以顺利访问到Zpan了。

来源:公众号【腾讯产业互联网学堂】,关注即可免费领取云计算学习视频、干货资料。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/737557.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

猫咪挑食怎么治?排行榜靠前适口性好的主食冻干推荐

在如今,养猫人士几乎都将自己的小猫咪视作珍宝,宠溺有加。但宠爱过度有时也会导致猫咪养成挑食的坏习惯。猫咪挑食怎么治呢?今天,我要分享一个既能让猫咪不受苦,又能纠正挑食问题的方法。 一、为什么猫会挑食呢&#x…

CSS 文档流

是指页面上的元素在摆放的时候所占用的空间,也泛指页面元素放置的位置。 块元素:比如li标签或者h1这种,都是默认自上而下摆放的。内联标签:如果是span标签或者strong标签,它是从左到右进行摆放的。 有些场景并非得从…

数据结构绪论

数据元素;数据项;组合项 数据对象 有相同性质的数据元素就属于同一个数据对象; 而数据结构则要求数据元素之间存在特定的关系! 线性数据结构&网状数据结构 数据结构这门课关注的是数据元素之间的关系,和对这些…

软件测试面试需要准备什么?面试有什么技巧?看完面试轻松解决

前言 无论是在校招还是社会企业招聘中,应聘者总是要经过层层的考核才能被聘用。然而,在招聘时,设置的编程以及非技术面试问题,真的有必要吗?如此就能考核出一位开发者的真实水平? 说到底就是考验你的技术以…

kibana新增查看更新删除es中的数据

登录kibana,打开开发工具 写入数据 PUT test20240311/person/1 {"name": "张三","mobile":"13011111111" } 查询数据 GET /test20240311/person/_search {"query": {"term": {"mobile": {…

docker安装各种组件

一 docker基本命令 镜像操作 ① 列举镜像 docker images ② 搜索镜像(以jdk为例) docker search jdk ③ 下载镜像 docker pull java ④ 查看所有镜像 docker images ⑤ 启动镜像(以jdk8为例) docker run -it --name jdk…

鸿蒙实战开发学习:【HiView插件开发】

概述 Hiview是一个跨平台的终端设备维测服务集,其中是由插件管理平台和插件实现的各自功能构成整套系统。 本文描述了hiview插件开发的全部流程。 插件的概念 整节部分包括了插件的概念,事件源的概念,流水线的概念等基本概念 插件的定义 …

低功耗高端蓝牙智能跳绳解决方案

一、方案概述 跳绳运动作为轻量、燃脂、便捷的运动之一,拥有庞大的人群基础。在这样的趋势下,智能跳绳的智能化及精细化也就顺理成章。 芯联深入智能运动健康器材市场,最新开发了蓝牙智能跳绳方案,采用双霍尔高精准计数方案&…

Nodejs 18.19.0 基本环境搭建(无版本管理)

简介 记录一次安装Nodejs的过程, 及设置install 安装路径等… 基本安装及设置步骤 1. 下载Nodejs并安装 NodeJs 18.19.0 LTS Windows安装msi, 下载后安装在自己想要的路径, 例如 D:\Softwares\Dev_Tools\nodejs cmd 中输入 nodejs version 可以查看版本 2. 设置 npm config ls…

Java17 --- SpringCloud初始项目创建

目录 一、cloud项目创建 1.1、项目编码规范 1.2、注解生效激活 1.3、导入父工程maven的pom依赖 二、创建子工程并导入相关pom依赖 2.1、相关配置文件 2.1.1、数据库配置文件内容 2.1.2、自动生成文件配置内容 三、创建微服务8001子工程 3.1、导入相关pom依赖 3.…

全面认识计算机操作系统(二)

目录 一、操作系统的诞生 相关概念: 1. 手工操作阶段 2. 脱机输入 / 输出阶段 (1)脱机输入技术 (2)脱机输出技术 3. 单道批处理阶段 4. 多道批处理阶段 5. 分时技术产生 6. 实时系统产生 二、现代操作系统的…

植物病害识别:YOLO水稻病害识别数据集(3000多张,3个类别,yolo标注)

YOLO水稻病害识别数据集,包含细菌性枯萎病,水稻瘟疫,褐斑病3个常见病害类别,共3000多张图像,yolo标注完整,可直接训练。 适用于CV项目,毕设,科研,实验等 需要此数据集或…

隐私与创新的交汇点:Partisia Blockchain 重绘技术蓝图

正当我们在这个信息泛滥的时代寻找稳固的信任锚点时,区块链技术应运而生,然而,正如任何科技革命都会遇到的挑战,一个重要的问题摆在了我们面前:如何在不牺牲个人隐私的前提下,享受区块链技术带来的好处&…

ChatGLM:CPU版本如何安装和部署使用

前段时间想自己部署一个ChatGLM来训练相关的物料当做chatgpt使用,但是奈何没有gpu机器,只能使用cpu服务器尝试使用看看效果 我部署的 Chinese-LangChain 这个项目,使用的是LLM(ChatGLM)embedding(GanymedeNil/text2vec…

深克隆和浅克隆

1.克隆 克隆是指创建对象的一个副本,使副本具有与原始对象相同的属性和状态。 而克隆又分深克隆和浅克隆。 2.浅克隆 浅克隆:只会把原对象中类型为值的属性复制一份,然后引用数据类型就把它们在内存中的地址复制过去 比如一个对象有 public …

我终于解决MathPage.wll文件找不到问题|(最新版Word上亲测)运行时错误,53’: 文件未找到:athPage.WLL

1、问题症状: 运行时错误,53’: 文件未找到:athPage.WLL 2、 解决方案 第一步 首先我们要先找到MathType安装目录下MathPage.wll文件,直接在此电脑中搜索MathPage.wll,找到文件所在位置。 第二步 打开Word文件&#xff0c…

Matplotlib进阶学习:基于Matplotlib实现设置Times New Roman字体

Matplotlib进阶学习:基于Matplotlib实现设置Times New Roman字体 🌈 个人主页:高斯小哥 🔥 高质量专栏:Matplotlib之旅:零基础精通数据可视化、Python基础【高质量合集】、PyTorch零基础入门教程&#x1f4…

实现简易可视化拖拽生成页面

1.背景 由于一些简单、重复的页面,需要开发,会耗费大量人力和物力。因此一般会利用低代码平台,进行拖拽生成,下面就是实现简易可视化拖拽生成页面 2 简易可视化拖拽生成页面具体实现 2.1 整体页面布局 整个页面分为顶栏、内容区…

递增三元组 刷题笔记

题意为 若存在 a中的数小于b中的数,b中的数小于c中的数 则该数算一种方案 思路 暴力模拟优化 两层循环遍历即可 从b到c的过程我们发现 第三层并不需要循环 直接加上 大于b的数量即可 那么第一层和第三层是对称的 我们有没有可能再去掉一层循环 只做一次遍历 …

238.除自身以外数组的乘积

题目:给你一个整数数组 nums,返回 数组 answer ,其中 answer[i] 等于 nums 中除 nums[i] 之外其余各元素的乘积 。 题目数据 保证 数组 nums之中任意元素的全部前缀元素和后缀的乘积都在 32 位 整数范围内。 请 不要使用除法,且…