Eld*_*mir 7 unix sockets apache proxy
我正在构建一个设置,其中一个主机运行一堆Docker容器来测试不同的代码分支,我想访问容器中正在运行的webserver.
所有容器都在运行host.每个容器通过主机上的unix插槽服务于web应用程序,例如/var/sockets/<socket_name>.
我想要的是apache on host基于url代理容器,所以当我GET https://<host>.com/<socket_name>/my_url,apache代理<socket_name>请求时:GET https://<host>.com/my_url.也就是说,它识别url中的套接字名称,重写url并将其发送到该套接字.
这可能吗?我仍在阅读文档,但似乎找不到任何提示
小智 5
基于网络上的各种文档,该想法将包含这两个步骤,mod_proxy并且包括mod_rewrite两个步骤,即,应对URL进行处理以提取套接字名称,并在不使用该部分的情况下进行重写,并根据新的(缩短的)URL进行代理。和套接字名称。
这里是如何可能看起来像:
RewriteEngine On
RewriteRule      /(.*)/(.*)  http://%{HTTP_HOST}/$2    [P]
ProxyPass        /           unix:/var/sockets/$1.sock|http://%{HTTP_HOST}/
ProxyPassReverse /           unix:/var/sockets/$1.sock|http://%{HTTP_HOST}/
我的建议以(.*)表达式为基础,该表达式将提取感兴趣的两个参数。然后,我们重写URL,并通过P标志表示将结果传递给代理。稍后,我们指定两个相同的名称ProxyPass,ProxyPassReverse并指定Unix套接字路径,管道|分隔符和主机基地址。
我希望这可以奏效,或者至少给您一些我们要寻找的草图。
| 归档时间: | 
 | 
| 查看次数: | 2122 次 | 
| 最近记录: |