All Projects → davidfstr → nanoproxy

davidfstr / nanoproxy

Licence: MIT license
Small fast HTTP forward proxy in Go.

Programming Languages

go
31211 projects - #10 most used programming language

Projects that are alternatives of or similar to nanoproxy

Toxy
Hackable HTTP proxy for resiliency testing and simulated network conditions
Stars: ✭ 2,698 (+8603.23%)
Mutual labels:  http-proxy
revp
Reverse HTTP proxy that works on Linux, Windows, and macOS. Made with C++ and Boost.
Stars: ✭ 80 (+158.06%)
Mutual labels:  http-proxy
LiveProxies
Asynchronous proxy checker
Stars: ✭ 17 (-45.16%)
Mutual labels:  http-proxy
Mallory
HTTP/HTTPS proxy over SSH
Stars: ✭ 251 (+709.68%)
Mutual labels:  http-proxy
SmartGW
Domain based VPN Gateway/Proxy for all devices
Stars: ✭ 49 (+58.06%)
Mutual labels:  http-proxy
ProxyChecker
An easy to use open-source, multithreaded Proxy Checker. Allows you to quickly check HTTP and SOCKS proxies in a user friendly GUI, for Windows, Mac OS, Linux.
Stars: ✭ 113 (+264.52%)
Mutual labels:  http-proxy
Mubeng
An incredibly fast proxy checker & IP rotator with ease.
Stars: ✭ 234 (+654.84%)
Mutual labels:  http-proxy
small-proxy
Go实现的一个跨平台域名式访问内网穿透工具
Stars: ✭ 49 (+58.06%)
Mutual labels:  http-proxy
devproxy
A local development http proxy with hosts spoofing written in Go
Stars: ✭ 35 (+12.9%)
Mutual labels:  http-proxy
web-proxy-script
Minimalist web proxy script
Stars: ✭ 55 (+77.42%)
Mutual labels:  http-proxy
node-proxy
High performance HTTP and reverse proxy server based on Node.js. 基于 Node.js 的高性能 HTTP 及反向代理服务器,类似nginx。
Stars: ✭ 71 (+129.03%)
Mutual labels:  http-proxy
C-Sharp-Proxy-Server
A proxy server built with c# can be both normal and MITM Proxy
Stars: ✭ 86 (+177.42%)
Mutual labels:  http-proxy
echoIP
显示客户端IP的详细信息
Stars: ✭ 63 (+103.23%)
Mutual labels:  http-proxy
Fasttunnel
NAT 内网穿透 远程内网计算机 域名访问内网站点 反向代理内网服务 花生壳 端口转发 http代理 微信 小程序 expose a local server behind a NAT or firewall to the internet like ngrok and frp. NAT ssh proxy tunnel reverse-proxy
Stars: ✭ 248 (+700%)
Mutual labels:  http-proxy
vex
reverse HTTP proxy tunnel via secure SSH connections.
Stars: ✭ 20 (-35.48%)
Mutual labels:  http-proxy
Contour
Contour is a Kubernetes ingress controller using Envoy proxy.
Stars: ✭ 2,985 (+9529.03%)
Mutual labels:  http-proxy
Fiddler-FPlug
Fiddler Plug,Provide Host Mapping、File Mapping、Header Replace、Https to Http、ServerIP、Disable Cache、vConsole、Console Log、JS Inject
Stars: ✭ 30 (-3.23%)
Mutual labels:  http-proxy
HttpProxy
JAVA实现的IP代理池,支持HTTP与HTTPS两种方式
Stars: ✭ 37 (+19.35%)
Mutual labels:  http-proxy
freeproxy
Get http proxies from some free proxy sites. (爬取免费HTTP代理)
Stars: ✭ 18 (-41.94%)
Mutual labels:  http-proxy
firefox-secure-proxy
Standalone wrapper for Firefox Private Network
Stars: ✭ 15 (-51.61%)
Mutual labels:  http-proxy

nanoproxy

This is a tiny HTTP forward proxy written in Go, for me to gain experience in the Go language.

This proxy accepts all requests and forwards them directly to the origin server. It performs no caching.

Despite this not being a full proxy implementation, it is blazing fast. In particular it is significantly faster than Squid and slightly faster than Apache's mod_proxy. This demonstrates that Go's built-in HTTP library is of a very high quality and that the Go runtime is quite performant.

Only xkcd.com has been really tested with this proxy. Many other sites don't work with the current implementation.

Prerequisites

  • Go 1.3.3, or a compatible version

Installation

  • Clone this repository.
git clone [email protected]:davidfstr/nanoproxy.git
cd nanoproxy
  • Configure your web browser to route all HTTP traffic through localhost:8080.

Usage

  • Start the proxy: go run nanoproxy.go

  • Open your web browser to http://xkcd.com or some other page on that site.

Notes

  • Go's HTTP server implementation is really good. I read it all. Only missing feature I desire is the ability to process multiple pipelined HTTP requests in parallel.
  • Go's HTTP client implementation is easy to use, based on my limited experience in this proxy. I have not read its implementation.
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].