Я использую веб-сервер apache на Ubuntu 14.04 LTS. Я оказался в ситуации, когда я из скрипта php на одном сервере запросил данные из другого скрипта php на втором сервере. Оба сервера находятся под моим контролем.
Вход в url
для сценария, который я запрашивал, работал нормально. Но при запросе с помощью cURL
сервер разбился. Не сервер, который запрашивал данные, а сервер, с которым связывается curl.
Существует ли сценарий, при котором запрос cURL обрабатывается иначе, чем обычный запрос из браузера? Я тоже не могу найти ничего полезного в своих лог-файлах. Думаю, я мог бы найти обходной путь, но это не хорошо, что кто-то, связывающийся с моим сервером с помощью curl, выдает его сбой?
Я вставил свой сценарий curl ниже.
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'GET');
curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/44.0.2403.125 Safari/537.36');
curl_setopt($ch, CURLOPT_PORT, 80);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 5);
curl_setopt($ch, CURLOPT_TIMEOUT, 5);
$output = curl_exec($ch);
curl_close($ch);