Так что, если я просматриваю http://www.example.com/user1.jpg Я вижу фотографию пользователя.
Но если я делаю запрос curl через PHP от моего локального веб-сервера (так тот же IP), он выбрасывает 401 несанкционированный.
Я даже пытался изменить пользовательский агент, но все равно безуспешно.
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_RETURNTRANSFER => 1,
CURLOPT_URL => 'http://example.com/user1.jpg',
CURLOPT_USERAGENT => 'Mozilla/5.0 (Windows NT 5.1; rv:31.0) Gecko/20100101 Firefox/31.0'
));
$resp = curl_exec($curl);
echo $resp;
curl_close($curl);
Что может быть не так?
Я использовал инструмент Fiddler, анализируя заголовки, выполняя 3 запроса GET. Первые два были 401 Несанкционированными, третий был принят без ввода учетных данных (возможно, реализован SSON).
Он использовал протокол аутентификации NTLM, поэтому выполнение curl из CLI с «—ntlm username: password» сделало эту работу за меня.
Других решений пока нет …