兔子隧道的服务器
项目描述
rabbit-tunnel-server
基于Python的兔子隧道服务器实现。
rt-server -sd rtunnel.io
需求
- Python 3.7 - 3.10
当前限制
- 没有单元测试
- 没有公开的API用于控制
- 没有认证
- 没有水平扩展
强烈推荐使用nginx等反向代理来解决以下限制。nginx web服务器示例配置在assets/nginx.conf
中。
- 对格式错误HTTP请求的鲁棒性
- HTTP/2
- 1 更好地处理HTTP keep-alive会话
- 2 修改HTTP响应
1 rabbit-tunnel-server
使用HTTP请求中的host头确定目标rabbit-tunnel
实例,但在HTTP keep-alive会话中,同一TCP连接中可以出现多个不同host头的HTTP请求。在这种情况下,rabbit-tunnel-server
使用第一个HTTP请求来确定目标rabbit-tunnel
实例,并假设后续的HTTP请求将具有相同的目标。为了克服这个限制,您可以设置反向代理,在host头更改时启动新的TCP连接,或者甚至可以禁用反向代理和rabbit-tunnel-server
之间的HTTP keep-alive会话(这是如nginx
等反向代理的默认行为)。
2 rabbit-tunnel-server
不解释任何HTTP响应,而是将其作为代理。因此,例如,HTTP响应中的host头可能不具有客户端请求的值,除非隧道Web服务器明确设置它们。为了克服这个限制,您可以设置反向代理来正确修改host头。
协议规范
TBD
项目详情
下载文件
下载适用于您的平台的文件。如果您不确定选择哪个,请了解有关安装包的更多信息。
源代码发行版
rabbit-tunnel-server-0.8.tar.gz (17.7 kB 查看哈希值)
构建发行版
关闭
rabbit-tunnel-server-0.8.tar.gz的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | fee3add40cbd6199d45fb3656e0c105ef160e58b34f2e3cb1631be69703ff749 |
|
MD5 | 6f9cdbf43d7d8bef89941f747e69b617 |
|
BLAKE2b-256 | 1bc3c6454453735fc088091cc5b55f001e1b2f6a68e6de09a0041fb94ea3f544 |
关闭
rabbit_tunnel_server-0.8-py3-none-any.whl的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 70f5f10f3e3d4e9c493601af3842af402dfb5681fc4d1be1bb077355c24080e2 |
|
MD5 | 0d3ba65c2432f54338fed1cfbf468692 |
|
BLAKE2b-256 | 0ca363dd10934663babdeb36d546026057b34d07ed24953e458ff57612c72a1e |