正向代理的 Apache Listen 与 VirtualHost 设置
把需要的 Apache 监听单独添加到代理的 VirtualHost 之外,而不是把已配置的端口当成正在工作的套接字。
<VirtualHost> 块描述 Apache 应如何处理匹配的请求,但它不会创建监听套接字。因此,端口 8080 上的正向代理配置可以存在于一个看起来没问题的文件里,而客户端在那里找不到任何监听者。
Listen 指令才提供这项独立的要求。对于只能通过本地客户端或受保护隧道访问的代理,预期的形式可能包括:
Listen 127.0.0.1:8080
<VirtualHost 127.0.0.1:8080>
# Existing restricted forward-proxy configuration
</VirtualHost>
这展示的是两者之间的关系,而不是完整的代理部署。请保留现有的客户端授权和目标限制。环回地址有意不提供新的公开代理监听。
还要检查生效配置中相互重叠的 Listen 条目。在没有注意到已有监听者的情况下再加一条指令,可能导致启动失败。从特定地址迁移到相互重叠的通配符绑定时,Apache 支持的重新启动流程也很重要。
当 SSH 转发到这个代理时,远端必须能到达真实的监听者。SSH 登录成功并不会让配置好的 Apache 端口变得可用。在更改 HTTP 凭据或放宽访问规则之前,先修正监听者和预期的绑定。然后再在真实的监听者上验证允许访问和拒绝访问两种情况。