Я пытаюсь подключиться к WebService с сервера PHP.Когда сервер находится в облаке AWS EC2, он получает правильный ответ, но когда я выдаю запрос с сервера, размещенного в облаке Linode, я всегда получаю ответ 403 с HTML-кодом, запрашивающим решение Cloudfare Captcha.
Есть код PHP, который выдает запрос:
$request = new SoapClient("https://datacast10.info/WSVEICULOSIMPLES/wsvs2.asmx?WSDL");
$response = $client->__soapCall('consulta', ['consulta' => ['dado' => 'data', 'tipo' => 'type', 'chave' => key]]);
if ($response){
... //Work with the response
}
Когда я тестирую этот код на Linode-сервере с CentOS 6.7, PHP 7, в первой строке происходит сбой.
IТакже попытался подключиться к серверу вручную, выдав команды оболочки.Если я попытаюсь сделать это на серверной оболочке:
curl https://datacast10.info/WSVEICULOSIMPLES/wsvs2.asmx?WSDL
, я получу веб-страницу с просьбой разрешить использование файлов cookie и определить код проверки (с фирменным знаком CloudFare).
Но если я попробую тот же кодв экземпляре AWS Lightsail с Ubuntu 18.04 и PHP 7 запрос работает, и команда curl правильно возвращает WSDL.
Я уже пытался создать новые линоды с той же учетной записью и с другой учетной записью, и я получаю ту же ошибку.