使用 tgState 自建无限图床 | 无限网盘

2023-11-22|2024-9-7
D_SUPER
D_SUPER
type
Post
status
Published
date
Nov 22, 2023
slug
tgState
summary
@csznet 开发的 tgState 将 Telegram 变成无限空间的直链网盘,可以作为图床、文件分享、视频分享的存储空间。
category
技术分享
tags
好用软件
Vercel
建站
icon

Telegram 是最为“自由而安全”的通讯软件,它在通讯中实现了用户匿名、信息端对端加密、聊天信息定时销毁、“阅后即焚”等功能。同时理论上 telegram 有无限的存储空间,适合保存文件。@csznet 开发的 tgState 提供便捷的 TG 文件直链访问(无需科学网络),让将 TG 作为图床,甚至是文件分享站成为一项可行的方案。生成的图片、视频链接可以嵌入如 Notion 中。
以下为 tgState 的部署介绍:

申请 tg bot

  • 通过 @BotFather 创建自己的通知机器人,并获取 bot_token
    • 与新创建的通知机器人对话一次

二进制部署

部署命令

wget <https://github.com/csznet/tgState/releases/latest/download/tgState.zip> && unzip tgState.zip && rm tgState.zip

使用命令

./tgState 参数
参数
必填参数 - target # ${user_id} 或者群组链接 - token # ${bot_token} 可选参数 - pass # 网页访问密码 - mode # 网盘模式 p 或 m - url # 网盘链接 - port # 访问端口
示例: Tg 用户 ID为 7654321,Bot token为 A1234@6789S,网盘的访问网页为 https://tgState.dsuper.xyz ,访问密码 ABCDEF,服务器开放端口 8100。运行命令如下:
/home/user/tgState -target @7654321 -token A1234@6789S -pass ABCDEF -mode p -url https://tgState.dsuper.xyz -port 8100
可以尝试使用 alwaysdata 部署,免费 100M 空间,目前申请需要信用卡。 使用 User program,将命令填入 Command* 中即可(注意填写绝对路径)。

Vercel 一键部署

不支持大于5mb文件,不支持tg获取文件路径。点我传送至Vercel配置页面

Cloudflare 设置

以下内容复制于:https://www.csz.net/proj/tgstate/

SSL证书访问

目的:解决开启 SSL&Cloudflare CDN 后重定向过多问题
设置路径:域名 -> SSL/TLS -> Overview
设置为 Full(strict) 【Full 也可以】
notion image

完全缓存图片

目的:加快访问速度,减少api请求次数
设置路径:域名 -> Rules -> Page Rules -> Create Page Rule
/d/* 设置缓存所有,如下
notion image
notion image
notion image

控制请求速率

目的:防止刷上传
设置路径:域名 -> Security -> WAF -> Rate limiting rules
建议给 /api 限制在10s不超过2次请求,如下
notion image
notion image

开启 Always Online

目的:当服务宕机后,图片正常访问
设置路径:域名 -> Caching -> Configuration -> Always Online
notion image
notion image

总结

部署完成后,使用 tgState 网页可以直接上传文件至 tg (无需科学网络),同时生成的直链也可直接打开。绑定一个好一点的域名(尤其不会被移动墙的,如 xxx.free.hr 就不好用),不会挂的无限存储(无限图床 无限网盘)就部署上线了。
上传 tgState 图片

相关阅读

 
💡
有关 tgState 安装或者使用上的问题,欢迎您在底部评论区留言,一起交流~

 
Windows 和 Ubuntu 远程桌面连接方案使用 CDN 加速个人博客 | 免费 CDN 方案 | NotionNext 修改底部栏
  • Twikoo
  • Waline
  • Cusdis