nginx 两台机器 出现退款失败问题

时间:2023-03-10 05:48:15
nginx 两台机器 出现退款失败问题

今天早上来公司后,测试人员告诉我 退款失败了。上周五还好好的,怎么这周三就出问题了,赶快让测试发来订单号,查询数据库,查询日志,发现还是以前的问题:

search hit TOP, continuing at BOTTOM
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:)
at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:)
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:)
at org.apache.tomcat.util.net.AprEndpoint$SocketWithOptionsProcessor.run(AprEndpoint.java:)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:)
at java.lang.Thread.run(Thread.java:)
Caused by: java.lang.RuntimeException: Unexpected error: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty
at sun.security.validator.PKIXValidator.<init>(PKIXValidator.java:)
at sun.security.validator.Validator.getInstance(Validator.java:)
at sun.security.ssl.X509TrustManagerImpl.getValidator(X509TrustManagerImpl.java:)
at sun.security.ssl.X509TrustManagerImpl.checkTrustedInit(X509TrustManagerImpl.java:)
at sun.security.ssl.X509TrustManagerImpl.checkTrusted(X509TrustManagerImpl.java:)
at sun.security.ssl.X509TrustManagerImpl.checkServerTrusted(X509TrustManagerImpl.java:)
at sun.security.ssl.ClientHandshaker.serverCertificate(ClientHandshaker.java:)
at sun.security.ssl.ClientHandshaker.processMessage(ClientHandshaker.java:)
at sun.security.ssl.Handshaker.processLoop(Handshaker.java:)
at sun.security.ssl.Handshaker.process_record(Handshaker.java:)
at sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:)
at sun.security.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:)
at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:)
... more
Caused by: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty
at java.security.cert.PKIXParameters.setTrustAnchors(PKIXParameters.java:)
at java.security.cert.PKIXParameters.<init>(PKIXParameters.java:)
at java.security.cert.PKIXBuilderParameters.<init>(PKIXBuilderParameters.java:)
at sun.security.validator.PKIXValidator.<init>(PKIXValidator.java:)
... more

郁闷了,tomcat下面都已经配置了支持https,那会是哪里的问题那? 于是关闭了一台,发现是正常的,关闭另一台,又不行了。

难道是nginx不支持 https的问题? 于是又看nginx是不是支持https,没问题,运维工程师早已经配置好。。。

最后实在没办法了,

把可以的那个 代码 拷贝到另一台不行的,正常了。。。。

想想 ,应该是上周之前 让运维拷贝了个别的class文件导致,两台服务器代码不一致吧。