注意!本教程仅且只能用于研究与学习

关于Telegram Web搭建的一种解决方案;主要基于反向代理的原理实现

前言

很多人也许试过反向代理Telegram Web,或者是在Github Pages这类服务上自行部署Webogram等,来达到类似“You2Php”这样的“免翻”效果,但是最终大部分都会失败;即使正常打开了Telegram Web的界面,也无法登录,会提示没有网络。

其实,这是因为Telegram Web需要几个子域名的API支持,只是简单的反向代理主域名,当然不能正常使用了。下面介绍反向代理Telegram Web的正确方式。

正文

反向代理API子域名

如有能力,请自行参考GitHub-tzchz/webogram-api

同样,也可以点击部署在Vercal上;不用动什么配置,全部默认即可

部署完成后,访问项目地址出现以下提示是正常的

本文以Vercel部署为示范,其他部署方式可以相应参考。

部署Telegram Web

这里有几个项目可供选择。此处选择的是旧版的Webogram,因为这个版本操作简单,在Github Pages / Cloudflare Pages这样的静态空间就可以部署。当然,旧版本有一些限制(也有可能会是优点),如:不支持新出的点赞功能、不支持显示广告、无法更换中文等等;在使用时提示Error. Please update your app to the latest version or switch to the official version of TelegramThe message is not supported on your version of Telegram Web. Update the app to view也是正常情况,可以选择新的Telegram Web K / Telegram Web Z;大家可以根据自己的喜好选择:

Webogram:GitHub - zhukov/webogram: Telegram web application, GPL v3

Telegram Web K:GitHub - morethanwords/tweb: Telegram Web K, GPL v3

Telegram Web Z:GitHub - Ajaxy/telegram-tt: Telegram Web Z, GPL v3

本文以Webogram部署为示范,其他项目可以自行参考。

旧版

先去Releases中下载压缩文件;或者将WebogramFork一份。

把程序中调用的API地址改成我们刚才反向代理的地址。Webogram的源码是在/js/app.js中修改;

查找原来的API地址:

“https://“+l+”.web.telegram.org/“+c

替换为刚才反向代理的地址:

“https://.vercel.app/“+l+”/“+c

然后再部署到Github Pages / Cloudflare Pages此类静态空间即可;本文以Cloudflare Pages作为示范

注意⚠️:在Cloudflare Pages上传文件时,请确保每一个文件均被上传,然后再部署

错误示范

当使用压缩包/文件夹上传出现以上图片中的错误时,请更换另一个上传途径

正确示范

部署完成后,访问你的网站,它在正常情况下会显示如下

Webogram

新版

因为新版文件数量过多,Cloudflare Pages不支持该数量级的文件上传,故本文并没有新版Telegram Web的演示

来自Cloudflare Pages的警告

Telegram Web K中,需要分别修改mtproto.worker.d4c394cfcd75943f854f.chunk.jsmtproto.worker.d4c394cfcd75943f854f.chunk.js.map两个文件;Windows上最好借助第三方工具查询,而macOS用户只需使用 command+空格 查询即可

在以上两个文件中,搜索

.web.telegram.org

将每个文件中第二个.web.telegram.org改成自己反向代理的网址;以上两个文件中第一个.web.telegram.org则无需更改

依葫芦画瓢

更改完成后,请将文件自行部署到服务器或者静态空间

后记

本文由XiYKiCHZ联合创作;

来自CHZ小广告:两元NAT容器英国(+44)虚拟号码Azure $100Office A1 无管理员账户Raidrive教育版账号Notion教育版账户Scaleway Cloud账号DeepL API free账号