It's pretty complicated:
pagekite.py implements a tunneled reverse proxy.
This is one way to make a web server on localhost (ports 8000 and 8443) visible as http://bar.foo.net/, ...
foo.net $ sudo pagekite.py --runas=nobody \ --isfrontend --ports=80,443 \ --domain=raw,http,https:*.foo.net:s3cr37
laptop $ pagekite.py \ --frontend=foo.net:443 \ --backend=http:bar.foo.net:localhost:8000:s3cr37 \ --backend=https:bar.foo.net:localhost:8443:s3cr37
That list again:
pagekite.net is a front-end service provider, a "FOSS start-up"
That list again:
What's left is "just" packaging!
Easy and cheap
Sharing work
Some other use-cases I have seen so far:
Basically any time a router or firewall is in the way...
Questions?
Links: