Cloudflare

Cloudflare 反向代理後面帶有 IIS 的 Tomcat 無法連接

  • March 3, 2020

我按照本指南使用 AJP13 執行帶有 IIS 10 的 Tomcat 9 。只要不通過 Cloudflare 代理,一切正常。但是,一旦我代理它,我在isapi_redirect.log.

[info] jk_open_socket::jk_connect.c (816): connect to 104.27.142.45:8009 failed (errno=60)
[info] ajp_connect_to_endpoint::jk_ajp_common.c (1065): (tomcat01) Failed opening socket to (104.27.142.45:8009) (errno=60)
[error] ajp_send_request::jk_ajp_common.c (1725): (tomcat01) connecting to backend failed. Tomcat is probably not started or is listening on the wrong port (errno=60)

它說它無法連接到104.27.142.45但那不是我伺服器的IP。這是 Cloudflare 反向代理的 IP。很可能是因為我使用指向 Cloudflare 和 Tomcat 的域名訪問網站,或者 isapi_redirect 通過對域名執行 DNS 查找來獲取 IP 地址。

有沒有可以強制IP地址連接的設置?

我最終在主機文件中添加了一條記錄。

172.30.18.82    mydomain.com

172.30.18.82我的伺服器的IP在哪裡。這將在 DNS 查找期間強制mydomain.com解析為我的伺服器的 IP。

如果你們中的任何人有更好的想法,我將不勝感激。

引用自:https://serverfault.com/questions/1005399