如何控制 apache c 模块中的连接

How to take control of a connection in an apache c module

我正在编写一个 apache 模块。身份验证后,我需要从客户端接收任意数据。原则上,我的解决方案要求我编写一个循环,允许程序从套接字读取和写入 — 或套接字 IO.

的 apache 底层机制

我知道这可能是 XY problem,但我想不出其他方法来做到这一点。我的程序已准备好开始双向通信,但我已经搜索了网络,但没有找到有用的东西。

我还检查了 request_rec 结构及其某些字段的所有相关结构,但没有发现任何看起来有趣或与此问题相关的内容。

你要的其实和Apache的WebSocket proxy module很像,所以应该是可以的。

特别是,请求处理程序可以使用 ap_get_conn_socket(r->connection) 访问底层套接字。让模块以不会将请求置于无意义状态的方式运行将更加棘手。但是mod_wstunnel的来源是here;那应该有助于指导你。祝你好运!