最近要给unraid装点插件, 奈何插件在github上, 不配合科学上网, 基本上就是卡死或者下载失败, 但是切换网络吧, 又得把整个整列停了, 感觉甚是麻烦...
索性自己用
nginx反向代理
搭个桥算了吧, 由于只是单纯的反向代理, 并不能完成
整个插件的安装: 因为配置文件中还有具体的插件下载地址, 那么就需要结合sub_filter
来篡改一下返回数据了!
由于
raw.githubusercontent.com
返回的数据被gzip
压缩过, 导致sub_filter
无法正常工作, 所以需要绕一绕, 先解压
过后, 再进行sub_filter
操作, 差不多思路都讲完了, 直接上关键代码
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
location /go/ { proxy_set_header X-Forwarded-For $remote_addr; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header Host raw.githubusercontent.com; proxy_redirect off; proxy_http_version 1.1; proxy_buffering off; proxy_pass https://raw.githubusercontent.com/; } location / { proxy_set_header X-Forwarded-For $remote_addr; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header Host raw.githubusercontent.cc; proxy_redirect off; proxy_http_version 1.1; proxy_buffering off; proxy_set_header Accept-Encoding ''; gzip off; sub_filter_types *; #替换所有类型 sub_filter '//github.com' '//github.xiaoc.cn'; #替换为github加速域名 sub_filter '//raw.githubusercontent.com' '//raw.githubusercontent.cc'; #替换为githubusercontent加速域名 sub_filter_once off; ####所有匹配到的都替换 proxy_pass http://127.0.0.1/go/; } |
解决方案
将插件下载地址
https://raw.githubusercontent.com/xxxxxxxx
中的com
替换为cc
, 即:https://raw.githubusercontent.cc/xxxxxxxx
ps: 有条件的朋友还是自己搭最好, 因为中间是可以给你插入点别的东西的, 我只能保证我不会.
最后, 访问
https://raw.githubusercontent.cc/dlandon/unassigned.devices/master/unassigned.devices.plg
, 发现原本的https://github.com/&author;/&name;/raw/master
被成功替换为https://github.xiaoc.cn/&author;/&name;/raw/master
GPT
如果您在使用Unraid时遇到了由于网络原因无法安装插件的问题,可以尝试以下一些解决方法:
- 检查网络连接并重新启动路由器:请确保您的Unraid服务器和路由器都已连接到同一个网络,并且网络连接正常。如果有任何网络故障,请尝试重启路由器以解决问题。
- 禁用插件防火墙:某些插件可能会使用自己的防火墙设置来限制对外部网络的访问。您可以尝试禁用这些插件的防火墙,或者修改其防火墙规则以允许必要的网络流量通过。
- 更改DNS设置:如果您的Unraid服务器无法解析域名或DNS设置不正确,可能会导致插件无法下载或安装。您可以尝试更改Unraid服务器的DNS设置,或者手动将需要下载的插件文件下载到本地并进行手动安装。
- 调整网络带宽限制:如果您的网络带宽受限,可能会导致插件下载速度缓慢或失败。您可以尝试调整网络带宽限制以提高下载速度,或者等待较低负载时再次尝试下载。
- 使用代理服务器:如果您的网络连接需要使用代理服务器才能访问外部网络,请在Unraid服务器中配置代理服务器设置,并确保代理服务器的设置正确。
总之,网络连接故障可能会导致Unraid无法下载或安装插件。您可以通过检查网络连接、禁用插件防火墙、更改DNS设置、调整网络带宽限制或使用代理服务器等方法来解决这些问题。如果以上方法都无法解决问题,请检查相关日志以获取更多信息,并寻求专业技术支持。
没听懂
_(:з」∠)_ 文笔有限