У меня есть капля приложения Digitalocean LEMP, настроенная для размещения моего веб-сайта (приложение PHP — CodeIgniter), я использую Nexmo SMS API в своем приложении, и до сегодняшнего дня все работало хорошо. Внезапно теперь, когда я пытаюсь отправить смс, у меня появляется эта ошибка «Не удалось разрешить хост: rest.nexmo.com». Похоже, что cURL не работает, но когда я проверил, установлен ли он, он есть, и мой phpinfo также показывает это. Я перезапускал nginx, php5-fpm, пробовал разные настройки curl в своем коде, но всегда получал эту ошибку.
Когда я попытался запустить простой скрипт следующим образом:
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'http://www.google.com/');
curl_setopt($ch, CURLOPT_VERBOSE, true);
curl_setopt($ch, CURLOPT_HEADERFUNCTION, 'read_header');
curl_setopt($ch, CURLOPT_WRITEFUNCTION, 'read_body');
curl_exec($ch);
if ($error = curl_error($ch)) {
echo "Error: $error<br />\n";
}
function read_header($ch, $string)
{
$length = strlen($string);
echo "Received $length bytes<br />\n";
return $length;
}
результат по-прежнему «Ошибка: не удалось разрешить хост: www.google.com», поэтому я думаю, что проблема в cURL, а не в коде моего приложения (я использую библиотеку NEXMO CodeIgniter).
Я перепробовал все, что пришло мне в голову, и теперь у меня заканчиваются идеи, поэтому любая помощь приветствуется. Есть ли какие-то специальные настройки/вещи, которые нужно сделать, чтобы подключить/заставить cURL работать с nginx, которых мне не хватает? Может быть, что-то в файлах nginx.conf, или мне нужно открыть какие-то порты и т. д.?