Eesha Dutta , Paryul Jain
A Simple HTTP proxy server.
- Multi Threaded : can handle multiple clients and server
- GET and POST requests supported.
- Blacklisting of Domains : some url’s blocked
- Caching : fast servicing of requests.
- Authentication : username and password required to view blacklisted domains
Run proxy server in proxy_server folder. Specify proxy port.
python proxy.py 20000
It will run proxy on port 20000
Run server in server directory. Specify server port.
python server.py 19999
to run server on port 19999
curl request can be sent as client request and get the response.
curl --request GET --proxy 127.0.0.1:20000 --local-port 20001-20010 127.0.0.1:19999/1.txt
This request will ask 1.txt file from server 127.0.0.1/19999 by GET request via proxy 127.0.0.1/20000 using one of the ports in range 20001-20010 on localhost.
Valid username and password should be provided to access blacklisted servers.
curl --request GET -u username:password --proxy 127.0.0.1:20000 --local-port 20001-20010 127.0.0.1:19998/1.data