Skip to content

Instantly share code, notes, and snippets.

@ericflo
Created November 22, 2010 01:11
Show Gist options
  • Save ericflo/709384 to your computer and use it in GitHub Desktop.
Save ericflo/709384 to your computer and use it in GitHub Desktop.
Proxies local stuff, depending on whether it's /live/ or not.
#!/usr/bin/env python
from twisted.internet import reactor
from twisted.web import proxy, server
from twisted.web.resource import Resource
class ProxyResource(Resource):
def getChild(self, path, request):
request.received_headers['x-forwarded-host'] = request.received_headers['host']
if path.startswith('live'):
return proxy.ReverseProxyResource('localhost', 8090, '/live')
return proxy.ReverseProxyResource('localhost', 8001, '/' + path)
if __name__ == '__main__':
root = ProxyResource()
reactor.listenTCP(8000, server.Site(root))
reactor.run()
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment