我正在我的 OpenBSD/PFSense 路由器(带有 5 个 1Mbs 端口的专用 PC)上尝试 ApacheTrafficServer (5.3.5)。我在这里提到了 OpenBSD/PFSense 主机,但并不指望它能带来任何不同,但我可能错了。
在 remap.config 中我有以下条目:
CONFIG proxy.config.url_remap.remap_required INT 1
CONFIG proxy.config.http.referer_filter INT 1
CONFIG proxy.config.http.referer_format_redirect INT 1
# jenkins
map_with_referer http://jenkins/ http://jenkins-ci.shm:8001/
reverse_map http://jenkins-ci.shm:8001/ http://jenkins/
当我输入“时我得到了什么”http://詹金斯/“浏览器中的浏览器是去往梦幻岛并且永不返回的。
我该如何解决这个问题?
更新 先回答几个问题:是的,Jenkins 解析为 pfsense/trafficserver 框,是的,jenkins-ci 解析为运行 jenkins 的机器。是的,trafficserver 仅在 LAN 接口上侦听端口 80 和端口 443,并且两台机器都在 LAN 中。
答案1
上述配置不应该进入 remap.config - 其中一半应该进入 records.config
在 records.config 中:
CONFIG proxy.config.url_remap.remap_required INT 1
CONFIG proxy.config.http.referer_filter INT 1
CONFIG proxy.config.http.referer_format_redirect INT 1
在 remap.config 中:
# jenkins
map_with_referer http://jenkins/ http://jenkins-ci.shm:8001/
reverse_map http://jenkins-ci.shm:8001/ http://jenkins/
为了完整性,我提到这一点,尽管我猜这是一个打字错误,而不是实际的配置错误。
似乎超时这一事实表明了两件事。要么 ATS 运行良好,并且存在内部问题,这些问题应该记录在其日志中(尤其是启用调试日志记录),要么连接根本无法到达 ATS。您可能需要尝试一些 cURL 命令来确认各个元素之间的连接。
- 来自客户端
curl -i http://jenkins/
- 从运行 ATS 的服务器
curl -i --resolve "jenkins:80:<ext_ip or lo_ip>" http://jenkins/
:curl -i http://jenkins-ci.shm:8001/
答案2
这个周末就弄清楚了。
remap.config 文件中存在错误。/var/log/trafficserver/diags.log 中的日志文件显示了此错误。TrafficServer 未监听除错误之外的任何重新映射配置条目。