visaversa
Новичок
Доброго времени суток!
Имеется linux Debian 6, Apache, PHP, Openssl - все собрано из deb пакетов, через apt-get
Есть 2 сайта, оба с https, https://domain.ru и https://gate.domain.ru, оба они успешно загружаются.
SSL сертификаты точно рабочие.
Проблема - Не могу заставить soap работать с https.
Когда запускаю проверочный код:
<?php
$host = 'https://site.ru';
$wsdl = 'https://site.ru/ShopService.wsdl';
$certificate = '/etc/ssl/cert.pem';
$phone = xxxxxx;
$service_number = xxxx;
$payment_sms = 'xxxx';
try {
$client = new SOAPClient(
$wsdl,
array(
'location' => $host.'/soap/ShopService/',
'local_cert' => $certificate,
'passphrase' => ''
)
);
}
catch (Exception $e) {
die("Error: ".$e->getMessage());
}
try {
$result = $client->InitPayment(array(
'Phone' => $phone,
'SMS' => $payment_sms,
'ServiceNum' => $service_number
));
}
catch (Exception $e) {
echo "Exception: ".$e->getMessage().PHP_EOL;
}
var_dump($result);
то вылезает такая ошибка:
Error: SOAP-ERROR: Parsing WSDL: Couldn't load from 'https://site.ru/ShopService.wsdl' : failed to load external entity "https://site.ru/ShopService.wsdl"
При этом если делать запрос через HTTP то все работает. Гуглил долго но ответа не нашел. Помогите плиз!
Имеется linux Debian 6, Apache, PHP, Openssl - все собрано из deb пакетов, через apt-get
Есть 2 сайта, оба с https, https://domain.ru и https://gate.domain.ru, оба они успешно загружаются.
SSL сертификаты точно рабочие.
Проблема - Не могу заставить soap работать с https.
Когда запускаю проверочный код:
<?php
$host = 'https://site.ru';
$wsdl = 'https://site.ru/ShopService.wsdl';
$certificate = '/etc/ssl/cert.pem';
$phone = xxxxxx;
$service_number = xxxx;
$payment_sms = 'xxxx';
try {
$client = new SOAPClient(
$wsdl,
array(
'location' => $host.'/soap/ShopService/',
'local_cert' => $certificate,
'passphrase' => ''
)
);
}
catch (Exception $e) {
die("Error: ".$e->getMessage());
}
try {
$result = $client->InitPayment(array(
'Phone' => $phone,
'SMS' => $payment_sms,
'ServiceNum' => $service_number
));
}
catch (Exception $e) {
echo "Exception: ".$e->getMessage().PHP_EOL;
}
var_dump($result);
то вылезает такая ошибка:
Error: SOAP-ERROR: Parsing WSDL: Couldn't load from 'https://site.ru/ShopService.wsdl' : failed to load external entity "https://site.ru/ShopService.wsdl"
При этом если делать запрос через HTTP то все работает. Гуглил долго но ответа не нашел. Помогите плиз!