当前位置: 首页 > news >正文

【Lychee图床】本地电脑搭建私人图床,公网远程访问

文章目录

  • 1.前言
  • 2. Lychee网站搭建
    • 2.1. Lychee下载和安装
    • 2.2 Lychee网页测试
    • 2.3 cpolar的安装和注册
  • 3.本地网页发布
    • 3.1 Cpolar云端设置
    • 3.2 Cpolar本地设置
  • 4.公网访问测试
  • 5.结语

1.前言

图床作为图片集中存放的服务网站,可以看做是云存储的一部分,既可以作为我们存放照片的存储空间,也可以建立外链成为网站或者文章的图片来源。但随着大厂运营的云存储日薄西山,各个图床的日子也不好过,甚至有的图床已经关门歇业。在这样的情况下,自建图床似乎成了唯一靠谱的选择。今天,笔者就为大家展示,使用Cpolar+ Lychee,建立一个简洁漂亮的私人图床网站。

2. Lychee网站搭建

Lychee是一款基于php的开源免费图床软件,正如其名称的翻译一样,Lychee也如荔枝一样干净透明,并且还能提供方便的图片操作编辑分组,以及用户管理、图片预览和外链等功能。对于私人用户来说,无疑是十分友好的。

2.1. Lychee下载和安装

由于lychee是开源项目,因此很自然的可以在github上找到其下载链接,当然也可以从其官网进入下载页面。

  • https://lychee.electerious.com
  • https://github.com/LycheeOrg/Lychee

20230428105301

20230428105302

Lychee的相关文件下载完成后,将下载的压缩包解压,并将文件放到运行环境的站点根目录中,笔者使用的是phpstudy作为网站运行环境,因此将lychee的网站文件放在WWW文件夹下。

20230428105303

20230428105304

接着,打开phpstudy,在软件主界面左侧点击“网站”按钮,进入网站列表页面,点击左上的“创建网站”按钮,进入新建网站的设置页面。

在网站设置页面,我们需要进行设置的内容并不多,只要设置:

  • 域名 - 本地lychee网站的域名,可随意输入;
  • 端口 – 本地lychee网页的输出端口,只要选择未被占用的端口即可;
  • 根目录 – 即lychee网页文件存放位置;
  • 程序类型 –lychee是web图床程序,运行需要依赖php7.2+,因此选择php7.2.9
  • 创建数据库 – 由于lychee网站运行需要依赖数据库,因此我们也要为lychee设置数据库,只要勾选“创建环境”列的“创建数据库”即可。

这些设置完成后,就可以点击最下方的“确认”按钮,保存lychee网站的设置。

20230428105305

需要注意的是,lychee的安装需要一些php的扩展组件,包括:Session、exif、mbstring、gd、mysqli、json、zip、imagick、optionally

好在phpstudy提供了PHP扩展的勾选项,让我们不必再一一配置这些PHP扩展(这也是笔者喜欢使用集成环境部署网站的原因)

20230428105306

2.2 Lychee网页测试

设置好lychee网页后,就可以在浏览器中输入localhost:端口号,访问到本地的lychee网页登录界面,此处需要输入的登录账户和密码,则是之前设置lychee网站的数据库登录名和密码。

20230428105307

20230428105308

2.3 cpolar的安装和注册

完成lychee网站的设置后,就能继续安装cpolar。与lychee网站的安装一样,cpolar也可以直接在cpolar的官网页面找到下载按钮。

cpolar官网:https://www.cpolar.com/

20230428105309

笔者使用的是Windows操作系统,因此选择Windows版本进行下载。

Cpolar下载完成后,将下载的文件解压,双击解压后的.msi文件,即可自动执行安装程序。接着只要一路“Next”就能完成安装。

20230428105311

20230428105312

为保证数据安全,cpolar会为每个用户创建独立的数据隧道,因此我们在使用cpolar之前,需要进行用户注册。注册过程也非常简单,只要点击cpolar主页右上角额“用户注册”,在注册页面填入必要信息,就能完成注册。

20230428105313

20230428105314

3.本地网页发布

到这里,我们完成了本地lychee图床网站的搭建,并安装了cpolar内网穿透程序,接下来我们就可以使用cpolar,创建一个内网穿透数据隧道,让我们能在公共互联网上访问本地的lychee图床网站。

3.1 Cpolar云端设置

通常免费版cpolar创建的数据隧道每24小时重置一次,为保证我们的图床网站能够长期稳定存续,因此笔者将cpolar升级至vip版。

下一步,我们登录cpolar的官网,在用户主页面左侧找到“预留”按钮,并点击进入cpolar的数据隧道预留页面。在这里设置一个公共互联网地址(可以看做数据隧道的入口),由于此时这个地址没有连接本地的软件输出端口,因此也可以看做是一条空白的数据隧道。

20230428105315

在预留页面,可以看到很多种可保留的数据隧道,这里我们选择“保留二级子域名”栏位。

20230428105316

在“保留二级子域名”栏位,需要进行几项信息的简单设置,即

  • 地区(服务器所在区域,就近选择即可)
  • 二级域名(会最终出现在生成的公共互联网地址中,作为网络地址的标识之一)
  • 描述(可以看做这条数据隧道的描述,能够与其他隧道区分开即可)。

完成这几项设置后,就可以点击右侧的“保留”按钮,将这条数据隧道保留下来。

20230428105317

当然,如果这条数据隧道不打算再使用,还可以点击右侧的“x”将其轻松删除,节约宝贵的隧道名额。

20230428105318

3.2 Cpolar本地设置

完成cpolar云端的设置,并保留了空白数据隧道后,我们回到本地的cpolar客户端,将云端生成的空白数据隧道与本地的测试页面连接起来,让我们能在公共互联网上访问到本地的测试页面。

在本地打开并登录cpolar客户端(可以在浏览器中输入localhost:9200直接访问,也可以在开始菜单中点击cpolar客户端的快捷方式)。

20230428105319

点击客户端主界面左侧“隧道管理”项下的“创建隧道”按钮,进入本地隧道创建页面(如果要创建每24小时重置地址的临时数据隧道,可直接在此进行设置,不必再cpolar官网设置空白数据隧道)。

在cpolar客户端创建隧道的页面,同样需要进行几项信息设置,这些信息设置包括:

1. 隧道名称 – 即cpolar本地隧道的注释,只要方便我们分辨即可;
2. 协议 – 由于的测试页面是网页,因此选择http协议;
3. 本地地址 –即为本地网站的输出端口号,因此这里也填入86;
4. 域名类型 – 由于我们已经在cpolar云端预留了二级子域名的数据隧道,因此勾选“二级子域名”(如果预留的是自定义域名,则勾选自定义域名),并在下一行Sub Domain栏中填入预留的二级子域名,这里我们填入“lycheeweb”。
但如果打算创建临时数据隧道,则直接勾选“随机域名”,由cpolar客户端自行生成网络地址;

5. 地区 – 与cpolar云端预留的信息一样,我们按实际使用地填写即可;

20230428105320

完成这些设置后,就可以点击页面下方的“创建”按钮,创建起能在公共互联网访问本地lychee网站的数据隧道。我们可以在“隧道管理”项下的“隧道列表”页面中,对这条数据隧道进行管理,包括开启、关闭或删除这条隧道,也可以点击“编辑”按钮,对这条数据隧道的信息进行修改。

20230428105321

4.公网访问测试

最后,我们点击左侧“状态”项下的“在线隧道列表”按钮,就能找到lychee网站的公共互联网地址。

20230428105322

将这个地址粘贴到浏览器中,就能看到本地lychee网站的登录页面,在输入登录名和密码后,就可以在公共互联网上访问到本地的图床页面。

20230428105323

20230428105324

5.结语

至此,我们就完成了本地lychee图床的部署,并通过cpolar生成的内网穿透数据隧道,将其发布到公共互联网,让我们本地的电脑成为私人图床,当然,cpolar还可以配合其他网站或软件,在其他应用场景中发挥作用。

相关文章:

【Lychee图床】本地电脑搭建私人图床,公网远程访问

文章目录 1.前言2. Lychee网站搭建2.1. Lychee下载和安装2.2 Lychee网页测试2.3 cpolar的安装和注册 3.本地网页发布3.1 Cpolar云端设置3.2 Cpolar本地设置 4.公网访问测试5.结语 1.前言 图床作为图片集中存放的服务网站,可以看做是云存储的一部分,既可…...

【MySQL系列】-ORDER BY……HAVING详解及limit

💐 🌸 🌷 🍀 🌹 🌻 🌺 🍁 🍃 🍂 🌿 🍄🍝 🍛 🍤 📃个人主页 :阿然成长日记 …...

浅析Keil MDK下串行Flash的下载算法设计

浅析Keil MDK下串行Flash的下载算法设计-电子发烧友网 今天给大家介绍的是 Keil MDK 工具下 i.MXRT 的串行 NOR Flash 下载算法设计。 在 i.MXRT 硬件那些事系列之《在串行 NOR Flash XIP 调试原理》一文中,痞子衡简单提了一下串行 NOR Flash 下载算法的概念&…...

springboot自动装配原理,手写一个starter。

文章目录 springboot自动装配原理手写starter手写starter总结: springboot自动装配原理 口述: springboot自动装配的话它其实就是只需要我们添加一个starter起步依赖,它就能完成这个依赖组件相关Bean的自动注入,其实就是自动的将…...

革命性的电子元件:RAD继电器 | 百能云芯

在现代电子和通信系统中,RAD继电器是一种关键的电子元件,它在各种应用中发挥着重要作用。RAD继电器(Reed-relay Actuated Device)是一种基于磁性原理的电子开关,其特点是极其高速、可靠、低功耗和长寿命。下面云芯将为…...

文献阅读:Deep Learning Enabled Semantic Communication Systems

目录 论文简介关于文章内容的总结引申出不理解的问题 论文简介 作者 Huiqiang Xie Zhijin Qin Geoffrey Ye Li Biing-Hwang Juang 发表期刊or会议 《IEEE TRANSACTIONS ON SIGNAL PROCESSING》 发表时间 2021.4 这篇论文由《Deep Learning based Semantic Communications: A…...

巨人互动|游戏出海游戏出海效果怎样?

游戏出海是指将原本面向国内市场的游戏产品进行调整和优化,以适应海外市场的需求,并进行推广和销售。下面小编讲讲关于游戏出海对于游戏效果的影响的一些讨论点。 1、市场扩大 通过游戏出海,可以将游戏产品的目标受众从国内扩展到全球范围内…...

二、GoLang输出HelloWorld、变量定义、数据类型的转换

一、输入Hello World go语言中,想要输出内容到控制台,package必须是main,包括方法名也必须是main, go语言输出的语法是 fmt 库。 package mainimport "fmt"func main() {// go语言中 输出内容 使用的库是 fmt库fmt.Pr…...

Mars3d图层树//图层管理加载时设置默认折叠的状态

问题:Mars3d图层树//图层管理加载时设置默认折叠的状态。 设置参考: 有个参数 open:false,写在对应的图层配置下,比如某个节点不展示,就对这个节点配置下。 如果全局,可以搜下这个widget内的代码&#xff…...

区块链技术|DApp与传统应用程序的关键区别

在数字时代,应用程序已经成为我们生活的一部分,无论是社交媒体、金融服务还是娱乐媒体,应用程序几乎无处不在。然而,随着区块链技术的崭露头角,一种新型应用程序——去中心化应用程序(DApp)正在…...

Python 加密解密技巧大揭秘:让你的数据安全无忧

建议食用原文链接效果更佳 Python 加密解密技巧大揭秘:让你的数据安全无忧 今天我们将探讨在 Python 中常见的加密解密算法,并通过代码案例来帮助大家更好地理解它们的实现。 在开始之前,请确保您已经安装了 pycryptodome 这个库。您可以使用…...

C#判断字符是否为utf16编码

unity截取显示微信昵称后,出现异常Error: UTF-16 to UTF-8 conversion failed because the input string is invalid,原因是截取字符串刚好截到了表情后面,解决思路是从截取到的索引向前遍历,找第一个不是utf16编码的字符&#xf…...

centos7上hive3.1.3安装及配置

1、安装背景; hive是基于hadoop的数据仓库软件,部署运行在linux系统之上,安装之前必须保证hadoop环境运行正常,hive本身不是分布式软件,它的分布式主要是借助hadoop实现,存储是hdfs,计算是mapr…...

Redis面试题(笔记)

目录 1.缓存穿透 2.缓存击穿 3.缓存雪崩 小结 4.缓存-双写一致性 5.缓存-持久性 6.缓存-数据过期策略 7.缓存-数据淘汰策略 数据淘汰策略-使用建议 数据淘汰策略总结 8.redis分布式锁 setnx redission 主从一致性 9.主从复制、主从同步 10.哨兵模式 服务状态监…...

iPhone 15 Pro展示设计:7项全新变化呈现

我们不应该再等iPhone 15 Pro在苹果9月12日的“Wonderlust”活动上发布了,而且可能会有很多升级。有传言称,iPhone 15 Pro将是自iPhone X以来最大的飞跃,这要归功于大量的新变化,从带有更薄边框的新钛框架到顶级A17仿生芯片和动作…...

【六袆 - Windows】PL/SQL instantclient安装包下载;PL/SQL双击登录配置

安装 PL/SQL 15 OMIT Oracle Instant Client Downloads for Microsoft Windows (x64) 64-bit https://www.oracle.com/database/technologies/instant-client/winx64-64-downloads.html 配置 # tnsnames.ora Network Configuration File:E:\oracle\product\10.2.0\db_1\ne…...

Springboot+mybatis-plus+dynamic-datasource 切换数据源失败问题总结

Springbootmybatis-plusdynamic-datasourceDruid 多数据源 切换数据源失败总结 文章目录 Springbootmybatis-plusdynamic-datasourceDruid 多数据源 切换数据源失败总结0.前言1. dynamic-datasource 切换数据源失败场景总结1. spring-batch整合情况下切换数据源异常解决办法&am…...

QuantLib学习笔记——InterestRate的应用

⭐️ 单利还是复利 巴菲特老爷子有句名言:“人生就像滚雪球,重要的是发现很湿的雪和很长的坡。” 很湿的雪,指的就是复利。很长的坡,指的就是时间。很湿的雪和很长的坡组合起来,就能滚成巨大的雪球。 哈哈&#xff0…...

记录--解决前端内存泄漏:问题概览与实用解决方案

这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助 内存泄漏是前端开发中的一个常见问题,可能导致项目变得缓慢、不稳定甚至崩溃。在本文中,我们将深入探讨在JavaScript、Vue和React项目中可能导致内存泄漏的情况,并提…...

IP初学习

1.IP报文 首部长度指的是报头长度,用于分离报头和有效载荷 2.网段划分 IP地址 目标网络 目标主机 3.例子 4.特殊的IP地址 5.真正的网络环境 6.调制解调器 “猫”,学名叫宽带无线猫 7.NAT 源IP在内网环境不断被替换 8.私有IP不能出现在公网上 因…...

如何在看板中体现优先级变化

在看板中有效体现优先级变化的关键措施包括:采用颜色或标签标识优先级、设置任务排序规则、使用独立的优先级列或泳道、结合自动化规则同步优先级变化、建立定期的优先级审查流程。其中,设置任务排序规则尤其重要,因为它让看板视觉上直观地体…...

Cinnamon修改面板小工具图标

Cinnamon开始菜单-CSDN博客 设置模块都是做好的,比GNOME简单得多! 在 applet.js 里增加 const Settings imports.ui.settings;this.settings new Settings.AppletSettings(this, HTYMenusonichy, instance_id); this.settings.bind(menu-icon, menu…...

鸿蒙中用HarmonyOS SDK应用服务 HarmonyOS5开发一个医院查看报告小程序

一、开发环境准备 ​​工具安装​​: 下载安装DevEco Studio 4.0(支持HarmonyOS 5)配置HarmonyOS SDK 5.0确保Node.js版本≥14 ​​项目初始化​​: ohpm init harmony/hospital-report-app 二、核心功能模块实现 1. 报告列表…...

【Java_EE】Spring MVC

目录 Spring Web MVC ​编辑注解 RestController RequestMapping RequestParam RequestParam RequestBody PathVariable RequestPart 参数传递 注意事项 ​编辑参数重命名 RequestParam ​编辑​编辑传递集合 RequestParam 传递JSON数据 ​编辑RequestBody ​…...

在鸿蒙HarmonyOS 5中使用DevEco Studio实现录音机应用

1. 项目配置与权限设置 1.1 配置module.json5 {"module": {"requestPermissions": [{"name": "ohos.permission.MICROPHONE","reason": "录音需要麦克风权限"},{"name": "ohos.permission.WRITE…...

Python 包管理器 uv 介绍

Python 包管理器 uv 全面介绍 uv 是由 Astral(热门工具 Ruff 的开发者)推出的下一代高性能 Python 包管理器和构建工具,用 Rust 编写。它旨在解决传统工具(如 pip、virtualenv、pip-tools)的性能瓶颈,同时…...

C#学习第29天:表达式树(Expression Trees)

目录 什么是表达式树? 核心概念 1.表达式树的构建 2. 表达式树与Lambda表达式 3.解析和访问表达式树 4.动态条件查询 表达式树的优势 1.动态构建查询 2.LINQ 提供程序支持: 3.性能优化 4.元数据处理 5.代码转换和重写 适用场景 代码复杂性…...

C++ 设计模式 《小明的奶茶加料风波》

👨‍🎓 模式名称:装饰器模式(Decorator Pattern) 👦 小明最近上线了校园奶茶配送功能,业务火爆,大家都在加料: 有的同学要加波霸 🟤,有的要加椰果…...

怎么让Comfyui导出的图像不包含工作流信息,

为了数据安全,让Comfyui导出的图像不包含工作流信息,导出的图像就不会拖到comfyui中加载出来工作流。 ComfyUI的目录下node.py 直接移除 pnginfo(推荐)​​ 在 save_images 方法中,​​删除或注释掉所有与 metadata …...

C++实现分布式网络通信框架RPC(2)——rpc发布端

有了上篇文章的项目的基本知识的了解,现在我们就开始构建项目。 目录 一、构建工程目录 二、本地服务发布成RPC服务 2.1理解RPC发布 2.2实现 三、Mprpc框架的基础类设计 3.1框架的初始化类 MprpcApplication 代码实现 3.2读取配置文件类 MprpcConfig 代码实现…...