Giter VIP home page Giter VIP logo

gh-proxy's Introduction

关注基础架构,可以通过电子邮箱联系我。

Anurag's GitHub stats

gh-proxy's People

Contributors

fcying avatar gizmo-ds avatar hunshcn avatar libsgh avatar m4nk1n avatar trumeet avatar xyz8848 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

gh-proxy's Issues

移除github限制

我想用它来加速克隆chromium源码,不知道该怎么修改?

Support git push

Cf-worker version doesn't seem to support git push when I close cnpmjs.
Is it possible to fix it?

建议加上下载文件大小限制

如果需要中转的文件大小较大,有可能长时间消耗服务器网络资源,可以在配置中加上文件大小限制,超出则返回原url。

docker 版的问题还是vps问题?

你的最新源码和dockerfile做了镜像.并启动
jsdelivr = 0
cnpmjs = 0
时 git clone 总提示500错误.
而且直接页面下载经常失败,要刷新几次才行.

后来改为
jsdelivr = 1
cnpmjs = 1
新版的raw.githubusercontent.com支持也报错...

不知道时我vps问题还是镜像问题..求解.

cnpmjs设置为0时异常

异常信息

cfworker error:
TypeError: Cannot read property 'href' of null
    at proxy (worker.js:130:36)
    at httpHandler (worker.js:120:12)
    at fetchHandler (worker.js:73:16)
    at worker.js:49:17

关于子目录的报错问题

我的环境是Cloudflare Workers.
使用Workers自己的域名,是可以正常访问的。
但是在Clouflare域名设置中开启Workers路由功能后,路由过的域名(也就是api.ineko.cc)就会报error code: 1000的错误。
image
image
我尝试修改了js文件无果。
求解..

feat: 负载均衡

因为群里大部分人都搞了自己的cf worker,能否添加个类似nginx的upstream或者负载均衡,然后把群里的节点都收集上来,然后做个公益让更多的人用。

断点下载

我用 wget 测试,好像无法支持断点下载。希望未来能加上支持。

能否加一下raw之类的链接分解

因为很多脚本都是直接指向了raw(eg:https://raw.githubusercontent.com/hiCasper/Shell/master/AutoReinstall.sh),所以每次都需要先找到原文件复制成https://github.com/hiCasper/Shell/blob/master/AutoReinstall.sh这种链接才可以使用,有一点麻烦,希望可以增加一下

问下 Cloudflare Workers 是否可以指定自选 CDN IP?

搭建 Python 版本毕竟还需要消耗服务器流量,就想着用 Workers 会好点,但是我只知道可以用其他方法给搭建在服务器上的网站指定自选 Cloudflare CDN IP,但是不知道 Workers 是否也能这样做。

特来问一下,这样正好可以用我写的 Cloudflare CDN 测速工具 来获得最快 IP~

Cloudflare 默认分配的给**访客的 IP 比较差,如果可以自选 CDN IP 会好很多。

参数转义问题

使用参数传递 github 下载地址会有转义问题,这个对写脚本会造成一些困扰

...
ENV CATTLE_K3S_VERSION v1.17.2+k3s1

ENV K3S_URL_amd64="https://gh.api.99988866.xyz/?q=https://github.com/rancher/k3s/releases/download/${CATTLE_K3S_VERSION}/k3s" \
    K3S_URL_arm64="https://gh.api.99988866.xyz/?q=https://github.com/rancher/k3s/releases/download/${CATTLE_K3S_VERSION}/k3s-arm64" \
    K3S_URL=K3S_URL_${ARCH} \

由于版本号中有个 +,直接把原地址加个前缀会导致解析出现问题:

地址

https://gh.api.99988866.xyz/?q=https://github.com/rancher/k3s/releases/download/v1.17.2+k3s1/k3s

会跳转至

https://gh.api.99988866.xyz/https:/github.com/rancher/k3s/releases/download/v1.17.2%20k3s1/k3s

然而这个地址是无效的。

当把 + 转义为 %2B 后请求正常:

https://gh.api.99988866.xyz/?q=https://github.com/rancher/k3s/releases/download/v1.17.2%2Bk3s1/k3s

建议能够提供类似 jsdelivr 的路径方式:

https://cdn.jsdelivr.net/gh/rancher/[email protected]+k3s1/k3s

A judgment

I use cf-worker version and close "cnpmjs" ,when I visit home page, it occur an error:

cfworker error:
TypeError: Cannot read property 'href' of null
at proxy (worker.js:135:36)
at httpHandler (worker.js:125:12)
at fetchHandler (worker.js:73:16)
at worker.js:49:17

I found the error code:
if(path.search(exp1) === 0 || !Config.cnpmjs && (path.search(exp3) === 0 || path.search(exp4))) I have read and tested code, I think it may should be:
if (path.search(exp1) === 0 || !Config.cnpmjs && (path.search(exp3) === 0 || path.search(exp4) === 0))

用curl 获取 releases/latest 的值和 不加proxy的有点不一样.

象下面这样. 用来获取软件最新的版本号.

$ curl https://github.com/BurntSushi/ripgrep/releases/latest
<html><body>You are being <a href="https://github.com/BurntSushi/ripgrep/releases/tag/13.0.0">redirected</a>.</body></html>

现在的效果好像是直接把 重定向后的页面刷出来了

$curl https://gh.api.99988866.xyz/https://github.com/BurntSushi/ripgrep/releases/latest                                                                                                        

<!DOCTYPE html>
<html lang="en" data-color-mode="auto" data-light-theme="light" data-dark-theme="dark">
  <head>
    <meta charset="utf-8">
  <link rel="dns-prefetch" href="https://github.githubassets.com">
  <link rel="dns-prefetch" href="https://avatars.githubusercontent.com">
  <link rel="dns-prefetch" href="https://github-cloud.s3.amazonaws.com">
  <link rel="dns-prefetch" href="https://user-images.githubusercontent.com/">
  <link rel="preconnect" href="https://github.githubassets.com" crossorigin>
  <link rel="preconnect" href="https://avatars.githubusercontent.com">

Docker 版本使用报错

前台是可以打开的,转很久圈圈后页面显示如下。

server error HTTPSConnectionPool(host='raw.githubusercontent.com', port=443): Max retries exceeded with url: /xxx/xxx/xxx(Caused by NewConnectionError(': Failed to establish a new connection: [Errno -3] Temporary failure in name resolution'))

测试页面无法打开

curl -v https://gh.api.99988866.xyz/ -i --connect-timeout 10
*   Trying 104.18.36.125:443...
* Connection timed out after 10005 milliseconds
* Closing connection 0
curl: (28) Connection timed out after 10005 milliseconds

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.