Skip to content

Latest commit

 

History

History
102 lines (61 loc) · 4.8 KB

README.md

File metadata and controls

102 lines (61 loc) · 4.8 KB

CloudFlare-ImgBed

注意:本仓库为Telegraph-Image项目的重制版,如果你觉得本项目不错,在支持本项目的同时,也请支持原项目。

1.Introduction

cf-pages/Telegraph-Image项目的重制版,实现了登录鉴权上传图片预览一键切换上传方式拖拽上传粘贴上传)、多文件上传整体复制多格式复制等功能。

image-20240722104315281

image-20240722104406761

image-20240722104418816

2.Features

  • 前端开源(可自行修改、打包使用)
  • 流畅丝滑的过渡动画~
  • 支持批量上传(不限同时选择文件数量,但为了保证稳定性,同时处于上传状态的文件最多为10个)
  • 上传文件实现呼吸灯效果
  • 上传显示实时上传进度
  • 支持整体复制和单独复制(整体复制即将所有链接通过换行串联起来后复制)
  • 支持MarkDown、HTML和原始链接三种格式复制
  • 上传后图片无需手动点击,可直接展示在管理页面中
  • 支持Web和API上传认证(感谢hl128k
  • 支持访问域名限制(感谢hl128k
  • 支持一键切换上传方式(拖拽点击、粘贴)

3.Deployment

3.1直接使用

部署方式和环境变量和原仓库保持一致。

提前准备

你唯一需要提前准备的就是一个 Cloudflare 账户 (如果需要在自己的服务器上部署,不依赖 Cloudflare,可参考#46

手把手教程

简单 3 步,即可部署本项目,拥有自己的图床

  1. Fork 本仓库 (注意:必须使用 Git 或者 Wrangler 命令行工具部署后才能正常使用,文档)

  2. 打开 Cloudflare Dashboard,进入 Pages 管理页面,选择创建项目,选择连接到 Git 提供程序

1

  1. 按照页面提示输入项目名称,选择需要连接的 git 仓库,点击部署站点即可完成部署

后台管理

  1. 默认关闭,开启方式如下:
    • 创建一个新的KV数据库
    • 进入项目对应设置->函数->KV 命名空间绑定->编辑绑定->变量名称,填写img_url,KV命名空间选择刚才创建好的KV数据库
    • 设置好后,访问http(s)://你的域名/admin即可进入后台管理页面
  2. 管理员认证,默认关闭,开启方式如下:
    • 项目对应设置->环境变量->为生产环境定义变量->编辑变量 ,添加BASIC_USER作为管理员用户名,BASIC_PASS作为管理员登录密码

图片审查

支持成人内容审查和自动屏蔽,开启步骤如下:

  • 前往https://moderatecontent.com/ 注册并获得一个免费的用于审查图像内容的 API key
  • 打开 Cloudflare Pages 项目的管理页面,依次点击设置环境变量添加环境变量
  • 添加一个变量名称ModerateContentApiKey为第一步获得的API key,点击保存即可

Web和API上传认证

环境变量增加AUTH_CODE,API使用如:https://cloudflare-imgbed.域名?authCode=`AUTH_CODE`

Web端在登录页面输入你的认证码即可。

访问域名限制

环境变量增加ALLOWED_DOMAINS,多个允许的域名用英文,分割,如:域名.xyz,域名.cloudns.be,域名.pp.ua

远端遥测

便于开发者进行bug的捕捉和定位,但是过程中可能收集到访问链接、域名等信息,如您不愿意泄露类似信息给项目开发者,可在环境变量中添加disable_telemetrytrue来退出遥测。

注意

修改环境变量后需要重新部署才能生效!

3.2定制化修改

按照3.1步骤部署完成后,前往仓库MarSeventh/Sanyue-ImgHub,按照操作说明进行DIY和打包操作,最后将打包好的/dist目录中的内容替换到该仓库的根目录下即可(复制+替换)。

4.TODO

  1. 增加粘贴图片上传功能(2024.7.22已完成)
  2. 增加markdown、html等格式链接复制功能(2024.7.21已完成)
  3. 上传页面增加管理端入口(2024.7.21已完成)

5.Tips

前端开源,参见MarSeventh/Sanyue-ImgHub项目。

如果觉得项目不错希望您能给个免费的star✨✨✨,非常感谢!