如何让 YAML 格式的配置文件支持在线访问?

2023-06-02 08:11:14 +08:00
 airbotgo
小猫咪的 .yaml 配置文件,自用。

GitHub 新手,新建项目并设置为“私密”,上传 .yaml 配置文件到项目,通过链接访问文件,提示 404 。
点击 GitHub 页面的「 raw 」按钮,会打开一个带 token 的页面,再次尝试访问,发现有时候 404 ,有时候可以访问(正常生成本地配置文件),但很快 404.
raw 链接类似这样的: https://raw.githubusercontent.com/xxxxxx/MyDoc/main/xxxxx.yaml?token=GHSAT0AAAAAAB7CDXFNPOSVZCL45K4LUJZYDONSDAPA

这是什么原因?
如果我想让一个 .yaml 配置文件只有自己在线访问( macOS 、Android 两个客户端),该如何操作?
(不想用第三方提供的托管服务)
1849 次点击
所在节点    问与答
18 条回复
litchinn
2023-06-02 08:23:02 +08:00
可以用 gist ,不想用托管服务就自己部署个配置中心,appolo 、nacos 啥的,不想这么重量级就 nginx 设置下不就可以访问了
airbotgo
2023-06-02 08:28:47 +08:00
可以用 gist
nginx 设置下
---------
能再多提供一些信息么?非程序员,这些都不懂。我搜搜看怎么搞?
SenLief
2023-06-02 08:29:23 +08:00
直接用 gist.github.com 托管私密文件即可,不要公开。
airbotgo
2023-06-02 08:31:54 +08:00
@SenLief
@litchinn
搜了下 gist ,目前正尝试中……感谢!
baobao1270
2023-06-02 08:47:21 +08:00
@airbotgo
@litchinn
Gist 没用。Secret 的 Gist 也一样要带 cookies 访问,Public 的 Gist 会显示在 gist.github.com/<yourusername> 里
Nasei
2023-06-02 08:53:30 +08:00
你去 github 个人设置里,找到最后有一个开发者选项,生成一个 api key ,然后把文档看一遍
airbotgo
2023-06-02 08:56:49 +08:00
进展及方法尝试反馈:

gist.github.com 创建私密 gist ;
直接将该 gist 链接添加到客户端托管列表,提示某行字符错误(可能用了很多表情符号);
点击该页面的「 raw 」按钮,会打开一个新的页面,将该页面链接添加客户端,成功。

短时间内没有出现 404 错误,已经够用了。

感谢楼上大佬们的回复。

不过仍然对提问中带 token 的页面,时不时 404 不是很理解(有时候又可以访问),有大佬知道吗?
ljsh093
2023-06-02 09:01:38 +08:00
@baobao1270 #5 有完整 url 就行,我随便找了个客户端能 get 到
kaneg
2023-06-02 09:27:15 +08:00
那个带 token 的 url 是有有效期限制的,大概是一个星期左右,过了有效期就需要重新访问页面生成一个新的链接
kaneg
2023-06-02 09:30:09 +08:00
至于为什么会带 token ,是因为你的仓库是私密仓库,防止别人直接访问到。如果别人偶尔拿到那个带 token 的 url ,他也只能用一段时间
airbotgo
2023-06-02 09:36:32 +08:00
@kaneg 感觉有效期 1 分钟都不到,甚至只有几秒钟就失效。
我是链接扔到不同的浏览器隐私窗口打开,能打开的,刷新一下就 404 ;有些根本就一直打不开。不知道原因何在。
infun
2023-06-02 09:52:07 +08:00
Clash 的请求能带 headers 吗? 如果可以的话,可以试试 S3 设置 CORS ( Cloudflare 的 R2 也可以)
ysc3839
2023-06-02 10:51:33 +08:00
不如弄个私有仓库,里面再弄 GitHub Pages
SenLief
2023-06-02 11:31:51 +08:00
额,gist 需要处理一下链接就不会变化了,一直都可以获取最新的内容。
就是点下 raw ,然后把链接中的 raw/xxxxxxx/文件名,把 xxxxxx 那部分删掉访问就可以了。
mingl0280
2023-06-02 11:34:03 +08:00
你自己在服务器上开个带鉴权的 fastapi 服务,提供 yaml 内容就行了……
palemoky
2023-06-02 11:59:54 +08:00
这个很简单,直接搞个私密 gist 即可,然后用以下链接即可,注意链接不能泄露。
用这个链接 gist 的文件名修改也不会影响内容加载,有个问题是 GitHub 受到干扰时可能打不开链接,所以首次加载 Clash 配置会陷入死循环。
https://gist.githubusercontent.com/<username>/<gist_id>/raw
SunsetShimmer
2023-06-02 12:32:12 +08:00
Secret Gist 是仅限链接访问,点击 raw 获取链接,加个 ghproxy 可以墙内访问。
unfrost
2023-06-02 15:13:18 +08:00
会 docker 的话,docker 跑一个 nacos 最方便了,就一句命令的事情,然后在里面加 yaml 配置,还可以查历史的修改记录之类的。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/945089

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX