2016-11-24 32 views
0

真的希望有人能幫助解決這個問題,因爲我似乎無法解決此問題。SOAP-ERROR:解析WSDL(PHP版本5.6.17)

我很困難得到下面的代碼在我的網站上工作。 該腳本的目的是根據提供的註冊號碼返回汽車長度。

問題是,當我將其移至我的實時環境時,該腳本根本無法工作。請任何人都可以提出可能的解決方案我不明白爲什麼它在開發環境中絕對正常,但是當我嘗試在我的主站點上運行它時,出現以下錯誤:

SOAP-ERROR:解析WSDL:無法從'https://website.com/CarLengthChecker.asmx?WSDL' :未能加載外部實體「https://website.com/CarLengthChecker.asmx?WSDL

<?php 

$carReg = "0000000"; 
try{ 

$opts = array(
    'http'=>array(
     'user_agent' => 'PHPSoapClient' 
     ) 
    ); 

$context = stream_context_create($opts); 
$client = new SoapClient  ('https://wesite.com/CarLengthChecker.asmx?WSDL', 
         array('stream_context' => $context, 
           'cache_wsdl' => WSDL_CACHE_NONE)); 

$result = $client->GetVehicleDetails(array(
           'VRM' => $carReg, 

           )); 
print_r($result); 
    } 
     catch(Exception $e){ 
     echo $e->getMessage(); 
    } 

    ?> 

我可以從瀏覽器的現場服務器上的腳本訪問WSDL地址只是沒有。

我檢查了現場的PHP設置,可以確認OpenSSL & SOAP 已啓用。

+0

你找到了解決方案嗎? –

+1

嗨,好的,是的,我把它切換到使用nusoap庫。無論出於何種原因解決了這個問題。 https://sourceforge.net/projects/nusoap/ – NAP50

回答

0

我發現的解決方案是使用nusoap庫(www.sourceforge.net/projects/nusoap)。這個問題可能特定於我們的服務器環境,但如果您遇到類似問題,我會建議您嘗試一下。