У меня есть PHP-скрипт, который использует cURL для доступа к файлу, также расположенному на моем сервере (установлена программа маркетинга по электронной почте). Я написал быстрый скрипт для проверки моей установки cURL, и он не работает, когда указывается на файл на моем собственном сервере. Сценарий:
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "http://www.mysite.com/test.php");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$contents = curl_exec($ch);
if($contents) {
echo $contents;
} else {
$err = curl_error($ch);
echo $err;
}
curl_close($ch);
Когда я запускаю этот код, он возвращает ошибку: не удалось подключиться к хосту
Если я изменю URL-адрес на http://www.google.com или любой другой сайт, он будет работать просто отлично. Кроме того, когда я пытаюсь открыть определенную страницу через cURL на другом сервере, она работает так, как должна. Предположения, которые я делаю из этих тестов, заключаются в том, что PHP cURL установлен и (вроде) работает и что проблема не в странице, которая пытается быть открыта.
Я подумал, что это может быть проблема с портом, поэтому я попытался указать порт с тем же результатом (без подключения к хосту). Я попытался curl_setopt
и http://www.mysite.com:80/
указать порт, который, как я знаю, открыт.
Это наводит меня на мысль, что проблема в моей установке apache, но я не специалист по apache и весь день бился с Google, но безрезультатно. Есть идеи, что может вызвать такой конкретный сбой cURL?