Ben harici WSDL ile çalışan çeşitli betikleri yaptık. Ben işe alınamıyor bizim sisteme entegre etmek zorunda biriyle karşılaşmış. I'be herhangi bir sonuç olmadan bir hafta boyunca çalışıyorum.
Komut dosyası zaten kurucu oluşturma başarısız:
$client = new SoapClient("https://webtjener09.kred.no/TestWebservice/OppdragServiceSoapHttpPort?WSDL");
Hata veriyor:
PHP Fatal error: SOAP-ERROR: Parsing WSDL: Couldn't load from 'https://webtjener09.kred.no/TestWebservice/OppdragServiceSoapHttpPort?WSDL' : failed to load external entity "https://webtjener09.kred.no/TestWebservice/OppdragServiceSoapHttpPort?WSDL"
Ben openssl yüklü ve PHP ile çalışma var, ve ben zaten SSL üzerinden diğer WSDL adlı diğer çalışma soap çağrıları olduğunu hatırlıyorum. Ben yapıcı zaten başarısız beri ben de bir sertifika ile bu çözemez öğrendim.
But: I tried to connect to the remote server with openssl command line, and this command also failed:
openssl s_client -connect webtjener09.kred.no:443 -state
Ama sonra SSL3 zorlayarak çalıştı ve bu gibi, mükemmel çalıştı:
openssl s_client -ssl3 -connect webtjener09.kred.no:443 -state
Yani bana uzak sunucunun SSL sürüm maç olduğunu düşünerek aldım. Doublecheck Ben de PHP ile cURL bağlantısı yapmaya çalıştık ve ben bu gibi SSL sürümü zorlayarak katma kadar başarısız oldu:
curl_setopt($ch, CURLOPT_SSLVERSION, 3);
CURL bağlantısı CURLOPT_SSLVERSION ekleme ok yaptı. Ve sonra benim soru kökü:
Nasıl PHP sabun yapıcısı zorlamak / de SSL3 kullanmaya çağırıyoruz. Bu çözüm olurdu gibi geliyor bana. Ama SSL3 sadece kullanmak için PHP SOAP işlevini belirlemek için nasıl bulmak mümkün olmamıştır. SSL3 hem komut-openssl-ve PHP cURL iş zorla, o halde aynı şey benim SOAP-fonksiyonu ile olur sanırım?
Girişler, lütfen?
(Ubuntu Linux, PHP 5.3.3 kullanarak)