超级简单的反向代理。
rprox的Python项目详细描述
一个超级简单的http/1.1代理,带有tls和加密支持。
rproxy负责加密证书,并自动更新它们。 这是由优秀的txacme库完成的。
从pypi安装:
$ pip install rproxy
创建一个目录来存储证书:
$ mkdir my-certs
制作rproxy.ini:
[rproxy] certificates=my-certs http_ports=80 https_ports=443 [hosts] mysite.com_port=8080
然后运行它:
sudo twistd -u nobody -g nobody -n rproxy
这将启动服务器,删除权限(将有效的uid/guid设置为nobody),并将传入的请求代理到mysite.com到localhost:8080。 您可以进一步配置:
[rproxy] certificates=my-certs http_ports=80,8080 https_ports=443 clacks=true [hosts] mysite.com_port=8080 mysite.com_host=otherserver mysite.com_onlysecure=True mysite.com_proxysecure=True myothersite.net_port=8081
此配置将:
- < >连接到以千字节为单位的服务器,但只允许与此站点的代理的HTTPS连接
常规配置
- http_ports–用于侦听http连接的数字端口的逗号分隔列表。
- https_ports–要监听https连接的数字端口的逗号分隔列表。
- certificates–保存证书的目录。
- clacks–对请求启用X-Clacks-Overhead。
主机配置
- <host>_onlysecure–强制使用https连接。如果未设置或设置为false,则将允许http和https连接。
- ^ TT14}$-通过HTTPS连接到代理服务器。如果未设置或设置为false,它将通过http连接。
- ^ TT15}$:代理应该连接到的代理服务器的端口。
- <host>_host–要代理到的服务器的主机名/IP。
- <host>_sendhsts–在https连接上发送hsts头。
- <host>_wwwtoo–也匹配www。