新證書爲「Symantec Class 3 EV SSL CA-G3」。客戶有CentOS。沒有控制權的服務器,它是第三方。當WDSL https地址在Firefox和Chrome中加載時,兩個瀏覽器都顯示「安全連接」,沒有問題。服務器更新證書後,使用WSDL服務的PHP安全連接中斷
的WSDL地址是https://palena.sii.cl/DTEWS/CrSeed.jws?WSDL
測試代碼:
$success = false;
$attempts = 0;
while (($success === false) && ($attempts < 10)) {
$attempts ++;
echo 'Attempt ' . $attempts . '<br>';
try {
$wsdl = 'https://palena.sii.cl/DTEWS/CrSeed.jws?WSDL';
$entity_loader_status_old = libxml_disable_entity_loader(false);
$SoapClient = new SoapClient($wsdl);
$seed = $SoapClient -> getSeed();
libxml_disable_entity_loader($entity_loader_status_old);
$success = true;
} catch (Exception $Exception) {
echo $Exception -> getMessage() . '<br>';
}
}
if ($success === true) {
echo 'SUCCESS';
} else {
echo 'ERROR';
}
的連接是默認情況下的安全,因爲PHP版本是22年5月6日(超過5.5.X)。
也許證書安裝失蹤某處。看起來像安全連接失敗。 – weirdo
@weirdo確實安全連接失敗,如果我禁用它的安全工作。我需要一個安全的連接。如果缺少證書安裝,那麼當我在瀏覽器中加載WSDL時,爲什麼瀏覽器顯示「安全連接」? – mikl
通常使用cURL建立連接的SOAP。默認情況下,使用嚴格模式的cURL將在安全連接有問題時失敗。如果您有權訪問服務器,請嘗試使用'curl https://palena.sii.cl/DTEWS/CrSeed.jws?WSDL'並查看輸出結果 – weirdo