У меня проблема между CURL и PHP. Я попытался подключиться к серверу Exchange 2010 через EWS. Соединение с сервером отлично работает в командной строке с использованием CURL, но не с расширением PHP Curl.
Я прикрепил изображение с отладочной информацией. Слева вы видите вывод командной строки, справа подробный вывод PHP. Когда расширение PHP Curl выдает ошибку «Закрытие соединения во время аутентификации согласования (HTTP 1.0?)», командная строка продолжает третий HTTP-запрос с результатом HTTP/1.1 302 Found:
Некоторая дополнительная информация:
- Я использую эту библиотеку для CURL-запросов: https://github.com/jamesiarmes/php-ntlm/blob/master/src/SoapClient.php
- у нас есть около 80 серверов обмена, где нет проблем. Только с этим сервером есть проблема. Наш клиент рассказал о программном обеспечении под названием «Sophos», используемом в качестве прокси для веб-сервера.
- CURLOPT_HTTPAUTH — это CURLAUTH_NTLM
- Версия PHP 7.3.1/7.3.9 также протестирована
- Информация cURL 7.63.0 / 7.52.1 также протестирована
Кто-нибудь знает, почему расширение PHP Curl закрывает соединение перед третьим запросом? Является ли это ошибкой расширения, могу ли я использовать константу PHP Curl, чтобы избежать этого, или есть другое решение?