Behebung des Fehlers „Vertrauensbeziehung konnte nicht hergestellt werden“ für den sicheren SSL/TLS-Kanal
Es kann verwirrend sein, wenn bei einem Webdienstaufruf über eine sichere SSL-URL der Fehler „Vertrauensbeziehung für sicheren SSL/TLS-Kanal konnte nicht hergestellt werden“ auftritt. Lassen Sie uns mögliche Ursachen und Lösungen untersuchen.
Diese Fehlermeldung weist normalerweise auf ein Problem mit dem SSL-Zertifikat auf dem Server hin. Möglicherweise ist es selbstsigniert oder der Hostname stimmt nicht mit dem Server überein. Um dieses Problem zu beheben:
Wenn Sie dem Server vertrauen und sein Zertifikat nicht überprüfen möchten (nicht empfohlen):
<code>// 信任所有证书 System.Net.ServicePointManager.ServerCertificateValidationCallback = ((sender, certificate, chain, sslPolicyErrors) => true);</code>
Wenn Sie dem Server vertrauen, aber seinen Hostnamen überprüfen möchten:
<code>// 信任发送者 System.Net.ServicePointManager.ServerCertificateValidationCallback = ((sender, cert, chain, errors) => cert.Subject.Contains("YourServerName"));</code>
Wenn Sie lieber eine benutzerdefinierte Rückruffunktion verwenden möchten, um das Zertifikat zu überprüfen:
<code>ServicePointManager.ServerCertificateValidationCallback += new RemoteCertificateValidationCallback(ValidateRemoteCertificate); private static bool ValidateRemoteCertificate(object sender, X509Certificate cert, X509Chain chain, SslPolicyErrors policyErrors) { bool result = cert.Subject.Contains("YourServerName"); return result; }</code>
Diese Lösungen deaktivieren den standardmäßigen Zertifikatsüberprüfungsprozess. Wie bei externen Servern sollten Sie diese mit Vorsicht verwenden, da Sie möglicherweise eine Verbindung zu einer nicht vertrauenswürdigen Quelle herstellen. Wenn der Server jedoch intern ist und der Erhalt eines gültigen Zertifikats unpraktisch ist, können diese Problemumgehungen die Kommunikation erleichtern.
Das obige ist der detaillierte Inhalt vonWie behebe ich SSL/TLS-Fehler „Konnte keine Vertrauensbeziehung herstellen'?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!