我的系统上安装了ColdFusion 9。
我需要从SSL加密站点(https)读取数据。我已经按照CF文档中描述的所有步骤进行操作。
那是:
keytool -import -keystore cacerts -alias giveUniqueName -file filename.cer
在CMD中,它显示“证书已成功添加”
但它仍然显示相同的错误 peer not authenticated 。
还有什么需要吗?
答案 0 :(得分:2)
如果您尝试在CF 11中调用Web服务(可能是10但是请自行检查),CF希望Web服务或任何CFHTTP调用在标准设置中使用WebSocket服务和端口8577。这是因为WebSocket服务已针对Web服务进行了优化,CFHTTP也使用了WebService套接字。
我在我的IIS服务器上运行CF 11,并且防火墙阻止了端口8577。当我尝试连接时,它会为CFHTTP和Web服务发回此错误:
" I / O例外:sun.security.validator.ValidatorException:PKIX路径 建筑失败: sun.security.provider.certpath.SunCertPathBuilderException:无法 找到所请求目标的有效证书路径"
似乎需要向CACERT for JRE添加自定义证书,但这不是我的解决方案。
如果您不想取消阻止WebSocket服务并且您不需要该本地运行的性能,那么可以使用IIS(至少是IIS)运行这一简单的修复程序。您所要做的就是进入CF Admin仪表板并将WebSocket服务更改为" Use Proxy"。这将通过IIS作为代理将所有调用发送到CF WebSocket服务或CFHTTP。重新启动CF Application Server服务,它应该工作正常。如果这些指示不完美,我会道歉,但它会引导你让它运作起来。另请参阅Using WebSocket with ColdFusion 11。
答案 1 :(得分:0)
虽然文档没有特别提及,但是需要重新启动ColdFusion服务。如果你还没有,那应该是你尝试的第一件事。