HTTP router
Project description
hroute
------
simple HTTP proxy based on `tproxy <http://github.com/benoitc/tproxy>`_.
Features
++++++++
- location rewriting
- links rewriting to handle proxy / paths
- simple configuration
- vhosts support
- logging (coming)
- authentification (coming)
Requirements
------------
- `Python <http://python.org>`_ 2.6 and sup (Python 3 not suppported yet)
- `gevent <http://gevent.org>`_ >= 0.13.4
- `setproctitle <http://code.google.com/p/py-setproctitle/>`_ >= 1.1.2
- `tproxy <http://github.com/benoitc/http-parser>`_ >= 0.5.2
- `http-parser <http://github.com/benoitc/http-parser>`_ >= 0.3.3
- `lxml <http://lxml.de>`_
Install
-------
::
$ pip install -r https://github.com/downloads/benoitc/hroute/requirements.txt
$ pip install hroute
Usage
-----
Create a configuration file named **route** in /var/spool/hroute
(default path) or any folder you want, for example in /tmp, put the
following configuration::
{
"all": {
"routes": {
"/": {
"remote": "benoitc.io:80",
"rewrite_response": true
},
"/local": {
"remote": "127.0.0.1:8000"
},
"/google": {
"remote": "google.com:80"
},
"/gunicorn": {
"remote": "gunicorn.org:80",
"rewrite_response": true
},
"/googles": {
"remote": "encrypted.google.com:443",
"ssl": true,
"rewrite_response": true
}
}
}
}
then launch hroute::
$ hroute -s /tmp -w 3
and go on `http://127.0.0.1:5000/gunicorn
<http://127.0.0.1:5000/gunicorn>`_. You should see the gunicorn.org
website.
More features soon.
------
simple HTTP proxy based on `tproxy <http://github.com/benoitc/tproxy>`_.
Features
++++++++
- location rewriting
- links rewriting to handle proxy / paths
- simple configuration
- vhosts support
- logging (coming)
- authentification (coming)
Requirements
------------
- `Python <http://python.org>`_ 2.6 and sup (Python 3 not suppported yet)
- `gevent <http://gevent.org>`_ >= 0.13.4
- `setproctitle <http://code.google.com/p/py-setproctitle/>`_ >= 1.1.2
- `tproxy <http://github.com/benoitc/http-parser>`_ >= 0.5.2
- `http-parser <http://github.com/benoitc/http-parser>`_ >= 0.3.3
- `lxml <http://lxml.de>`_
Install
-------
::
$ pip install -r https://github.com/downloads/benoitc/hroute/requirements.txt
$ pip install hroute
Usage
-----
Create a configuration file named **route** in /var/spool/hroute
(default path) or any folder you want, for example in /tmp, put the
following configuration::
{
"all": {
"routes": {
"/": {
"remote": "benoitc.io:80",
"rewrite_response": true
},
"/local": {
"remote": "127.0.0.1:8000"
},
"/google": {
"remote": "google.com:80"
},
"/gunicorn": {
"remote": "gunicorn.org:80",
"rewrite_response": true
},
"/googles": {
"remote": "encrypted.google.com:443",
"ssl": true,
"rewrite_response": true
}
}
}
}
then launch hroute::
$ hroute -s /tmp -w 3
and go on `http://127.0.0.1:5000/gunicorn
<http://127.0.0.1:5000/gunicorn>`_. You should see the gunicorn.org
website.
More features soon.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
hroute-0.2.0.tar.gz
(7.9 kB
view details)
File details
Details for the file hroute-0.2.0.tar.gz
.
File metadata
- Download URL: hroute-0.2.0.tar.gz
- Upload date:
- Size: 7.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 82fb8bcffb8916ad08711b22177870c0b485ff7470fdb3869a1eb162ad056ef5 |
|
MD5 | 4bf9f959b0ea48af60e0de9d777df155 |
|
BLAKE2b-256 | 6e520ebeeffa6610b202b02eeacb6b52ba66c199050ce54734ec7567dbe06854 |