Alipay integration 页面跳转后提示 Server not found
结论
Server not found 表示浏览器无法将 excashier.alipay.net 解析为 IP 地址,此时请求还没有到达支付宝接口。应先检查 hosts 文件中的测试环境映射是否正确、修改是否生效,并清理系统或浏览器的 DNS 缓存。
不要使用网上随意找到的 IP。测试环境 IP 应以当前支付宝集成指南或支付宝技术支持提供的信息为准。域名恢复访问后,示例中的 auth_order_id 和 _cache_context_token 也可能已经过期,需要重新创建订单,并使用接口新返回的跳转地址。
原因分析
常见原因包括:
hosts中的域名拼写有误,例如将excashier.alipay.net写成了相似域名。- IP 和域名之间没有使用有效的分隔符,或者整行已被
#注释。 - 修改了错误的
hosts文件,或编辑后没有保存。 - Windows 将文件保存成了
hosts.txt。 - 浏览器、安全软件、代理或 VPN 使用独立 DNS,没有经过系统
hosts。 - 系统仍在使用修改前的 DNS 缓存。
- 集成指南中的测试地址或 IP 已失效,旧版 Global Alipay 测试环境更容易遇到这种情况。
- 跳转链接中的订单号或上下文令牌已经过期。这类问题通常会在域名解析成功后显示为业务错误,而不是
Server not found。
正确配置 hosts
hosts 条目的基本格式是:
<支付宝提供的测试环境 IP> excashier.alipay.net
仅从格式上看,配置应类似:
203.0.113.10 excashier.alipay.net
203.0.113.10 只是文档示例地址,不能用于实际连接。请将其替换为支付宝当前提供的真实测试 IP。
Windows
编辑以下文件:
C:\Windows\System32\drivers\etc\hosts
请以管理员身份运行编辑器,并确认文件名仍是 hosts,没有 .txt 后缀。保存后刷新 DNS 缓存:
ipconfig /flushdns
macOS
编辑以下文件:
/etc/hosts
可以使用以下命令刷新缓存:
sudo dscacheutil -flushcache
sudo killall -HUP mDNSResponder
Linux
编辑以下文件:
/etc/hosts
不同发行版使用的缓存服务可能不同。如果系统启用了 systemd-resolved,可以执行:
sudo resolvectl flush-caches
验证映射是否生效
不要只用 nslookup 判断。部分系统中的 nslookup 会直接查询 DNS 服务器,不一定读取 hosts。
Windows 可以执行:
ping excashier.alipay.net
macOS 或 Linux 可以执行:
ping -c 1 excashier.alipay.net
Linux 还可以查看系统解析结果:
getent hosts excashier.alipay.net
如果输出的 IP 与 hosts 中配置的 IP 一致,说明本机解析已经生效。也可以直接测试 HTTPS 连接:
curl -v "https://excashier.alipay.net/standard/auth.htm"
如果仍然出现 Could not resolve host 之类的提示,说明问题仍在本机域名解析。如果已经连接到某个 IP,但返回证书错误、HTTP 错误或支付宝业务错误,则 DNS 问题已经解决,接下来需要检查环境、证书和请求参数。
仍无法访问时的处理顺序
- 完全退出浏览器后重新打开,必要时重启系统。
- 暂时停用 VPN、HTTP 代理或安全软件的 DNS 过滤功能,然后再次测试。
- 检查浏览器是否启用了 Secure DNS/DoH。部分环境中,这项功能可能影响本地域名解析。
- 确认测试 IP 和
excashier.alipay.net属于同一套支付宝环境,不要混用生产环境与沙箱环境。 - 在商户系统中重新创建一笔测试订单,使用接口最新返回的完整跳转 URL,不要继续使用旧的
auth_order_id。 - 正确配置后仍无法连接时,请联系支付宝 Global Merchant Technical Support,确认集成指南中的测试域名、测试 IP 和账户权限是否仍然有效。
注意事项
不要直接把 URL 中的 excashier.alipay.net 替换为 IP。HTTPS 会根据域名进行 SNI 路由和证书校验,直接访问 IP 很可能引发证书错误,或被路由到错误的服务。
也不要在公开页面或日志中长期保留完整的 auth_order_id、_cache_context_token 等交易上下文参数。排查结束后,请重新生成测试订单,并对日志中的敏感参数进行脱敏。
备注:内容仅供参考。
