Skip to content

reverse proxy, reverse proxy, access Youtube/twitter/Google without going over the wall, support telegram web login. Please do not use this item for illegal purposes, otherwise you will be responsible for the consequences.

License

Notifications You must be signed in to change notification settings

bnichs5/siteproxy

This branch is 129 commits ahead of, 32 commits behind netptop/siteproxy:master.

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Oct 6, 2021
2b36780 · Oct 6, 2021
May 18, 2020
Sep 17, 2020
Sep 26, 2020
Sep 27, 2020
Feb 15, 2020
Sep 17, 2020
Feb 15, 2020
Oct 6, 2021
Sep 26, 2020
Sep 23, 2021
Feb 15, 2020
Sep 19, 2020
Sep 19, 2020
Sep 17, 2020
Apr 23, 2020
Apr 23, 2020
Sep 5, 2020
Sep 17, 2020
Apr 23, 2020
May 1, 2020
Mar 18, 2020
Sep 26, 2020
Sep 17, 2020
Mar 13, 2020
Sep 17, 2020
Sep 17, 2020

Repository files navigation

siteproxy

Reverse proxy, free access to youtube/twitter/google over the wall, support telegram web login. pure web page proxy to google/youtube, zero configuration from client side. Reverse proxy to all internet. One-click deployment, a powerful tool for overcoming the wall.

                                                 +----> google/youtube
                             +----------------+  |
                             |                |  |
user browser +-------------->+ siteproxy      +-------> wikipedia
                             |                |  |
                             +----------------+  |
                                                 +----> chinese forums

Please do not use this item for illegal purposes, otherwise you will be responsible for the consequences.

目录

Features principle Support agent website Deploy to cloudflare_worker Deploy to now server Deploy to heroku server Deploy to vps server cloudflare_worker_deployment now_deployment vps_deployment Contact information

特点

  • 代码量只有jsproxy的四分之一左右
  • 不使用service worker,不会和网站本身的service worker冲突
  • enter siteproxy's address, and go surf on internet without censorship
  • no proxy setting from client side is needed. zero configuration from client browser
  • easy deployment to now.sh
  • support downloading files

原理

 1. user browser url: https://siteproxy.herokuapp.com/https/www.google.com
 2. siteproxy.herokuapp.com received the url and request www.google.com, and get response from www.google.com
 3. siteproxy replace all returned strings in javascript/html:
    https://www.google.com => https://siteproxy.herokuapp.com/https/www.google.com
    url(/https/github.com/xxx) => url(/https/github.com/https/www.google.com/xxx)
    https://xxx => https://siteproxy.herokuapp.com/https/xxx
    etc.
 4. send back the modified html/javascript to user browser.

支持代理的网站

1. www.google.com, and search action.
2. www.youtube.com, only firefox browser is supported.
3. zh.wikipedia.org, and search action.
4. facebook, login is not verified.
5. twitter, search in twitter, login is not supported.
6. telegram web login
7. 中文论坛等

部署到cloudflare_worker

1. Register a cloudflare account
2. Create a worker on cloudflare and write down the subdomain name of this worker, such as abcd123.xxxx.workers.dev
3. Find the build/worker.js file of this repo, open it with a text editor, search for siteproxy.netptop.workers.dev, and replace it with your subdomain name
4. Edit the worker just created on cloudflare, copy all the contents of worker.js, overwrite and paste it into the worker, save
5. You should now be able to access your subdomain in the browser 

部署到now服务器

(可能有问题,暂时没有now账户测试)
1. 注册一个now账户https://zeit.co/home
2. 没有github账户的话, 注册一个github账户,fork本repo
3. 在now的控制台里面创建一个应用, 且绑定到你刚才fork的repo上, 会得到一个域名类似的域名:your-domain-name.now.sh
4. 在github上修改你刚fork的repo, 将config.js里的serverName修改为你的新域名:
   serverName: 'siteproxy.netptop.com' ====> 'your-domain-name.now.sh'
5. 现在可以在浏览器里面访问你的新域名了:  https://your-domain-name.now.sh

部署到heroku服务器

1. Register a heroku account: https://www.heroku.com/
2. If you don't have a github account, register a github account and fork the repo
3. Create an application in the heroku console and bind it to the repo you just forked, and you will get a domain name with a similar domain name: your-domain-name.herokuapp.com
4. On heroku's'Deloy' page, click the'Enable Automatic Deploys' button
5. Modify the repo you just forked on github, and change the domain name in procfile to your new domain name (remember not to add the https prefix):
          "web: herokuAddr=siteproxy.herokuapp.com npm run start"
    ====> "web: herokuAddr=your-domain-name.herokuapp.com npm run start"
6. Now you can access your new domain name in the browser: https://your-domain-name.herokuapp.com 

部署到vps服务器

1. 创建一个ssl website(使用certbot and nginx, google下用法), 配置nginx,
   /etc/nginx/sites-enabled/default 需要包含以下内容:
   ...
   server {
      server_name siteproxy.your.domain.name
      location / {
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
        proxy_pass       http://127.0.0.1:8011;
      }
   }
2. 执行:sudo systecmctl start nginx
3. 用户环境下执行下列命令安装node环境, 如果你已经有node环境, 忽略这一步
   (1)curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.35.3/install.sh | bash
   (2)source ~/.bashrc
   (3)nvm install v12.16.3
3. 执行:npm install -g forever
4. 执行:git clone https://github.com/netptop/siteproxy.git;
5. 执行:cd siteproxy; npm install;
6. 打开config.js文件, 找到serverName定义的地方, 如下修改:
   serverName: 'siteproxy.herokuapp.com' ====> '这填你的域名'
7. 执行:forever start -c 'node --tls-min-v1.0' index.js
8. 现在就可以在浏览器中访问你的域名了.
9. 如果想套CloudFlare加速, 可以参考CloudFlare说明

cloudflare_worker_deployment

1. register a cloudflare account
2. create a worker in cloudflare, remember worker's sub-domain name, like abcd123.xxxx.workers.dev
3. search build/worker.js in this repo, open it in a text editor, search and replace 'siteproxy.netptop.workers.dev' with your sub-domain name.
4. edit the worker just created in cloudflare, replace worker's content with content of build/worker.js, save.
5. done.

now_deployment

1. register one now.sh account from https://zeit.co/home
2. npm install -g now
3. git clone https://github.com/netptop/siteproxy.git
4. cd siteproxy
5. now
6. find your domain name from now cli, then replace serverName in 'config.js', like:
   serverName: 'siteproxy.herokuapp.com' ====> 'your-domain-name.now.sh'
7. change "blockedSites = ['www.youtube.com', 'm.youtube.com']" ====> "blockedSites = []" if you want to support youtube
8. now --prod
9. done

vps_deployment

1. create ssl website(using certbot and nginx), and configure nginx as follow:
   vi /etc/nginx/sites-enabled/default:
   ...
   server {
      server_name siteproxy.your.domain.name
      location / {
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
        proxy_pass       http://127.0.0.1:8011;
      }
   }
2. systecmctl start nginx
3. npm install -g forever
4. git clone https://github.com/netptop/siteproxy.git; 
5. cd siteproxy; npm install;
6. replace serverName in 'config.js', like:
   serverName: 'siteproxy.herokuapp.com' ====> 'siteproxy.your.domain.name'
7. forever start -c 'node --tls-min-v1.0' index.js
8. done, now you can access your domain name from browser.

联系方式

Telegram群: @siteproxy
email: netptop@gmail.com

About

reverse proxy, reverse proxy, access Youtube/twitter/Google without going over the wall, support telegram web login. Please do not use this item for illegal purposes, otherwise you will be responsible for the consequences.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • JavaScript 70.7%
  • HTML 27.2%
  • CSS 2.1%