Этот сайт работает уже несколько месяцев и работает отлично. У меня есть страница PHP, которая создает счет-фактуру из данных в URL-адресе (например, viewinvoice.php? Id = 250 строит счет-фактуру на основе записи 250). Эта страница доступна через веб-браузер и прекрасно работает.
На совершенно другой странице (т.е. test.php) я пытаюсь получить доступ к этому файлу через cURL. Однако, когда я делаю вызов и var_dump результаты, я получаю bool (false).
Здесь функция, которая вызывает вызов cURL:
function file_get_contents_curl($url) {
$ch = curl_init();
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_URL, $url);
$data = curl_exec($ch);
curl_close($ch);
return $data;
}
HOME - это константа, которая обозначает полный URL-адрес (например, http://www.example.com/).
$invoice_contents = file_get_contents_curl(HOME.'viewinvoice.php?id=242');
echo $invoice_contents;
var_dump( $invoice_contents );
Я попытался изменить URL-адрес на внешний url (т.е. http://www.google.com/), и страница загружается просто отлично. Я получаю главную страницу Google. Но любая страница, которая в том же домене не будет загружена. Есть ли причина, по которой это произойдет?
Я не администратор сервера, но у меня есть root-доступ к серверу. Я недавно не изменил настройки, но администратор сервера, возможно, обновил версию apache или php?
В любом случае, есть ли параметр, который я могу изменить, чтобы снова выполнить эту работу?
P.S. Я просто попытался сделать этот точный вызов с внешнего сервера (другой домен), и он работает нормально.