Есть сервер на Freebsd 6.2 с Apache/2.2.6 и PHP 5.2.4 в качестве модуля.
Проблема такая: скрипты запущенные под апачем не могут установить соединение. То есть, создаем скрипт следующего содержания:
<?
readfile("http://ya.ru");
?>
и при обращении к нему браузером получаем:
Warning: readfile(): php_network_getaddresses: getaddrinfo failed: hostname nor servname provided, or not known in /path/to/script.php on line 2 Warning: readfile(http://ya.ru): failed to open stream: Bad file descriptor in /path/to/script.php on line 2Но, если запустить этот же скрипт из командной строки на том сервере - все великолепно работает.
В чем может быть проблема? Подскажите, пожалуйста.
>Warning: readfile(): php_network_getaddresses: getaddrinfo failed: hostname nor servname provided, or not knownтебе ж русским языком написано что адрес хоста он не может определить.
читать вообще умеешь?
смотри свой или или ближайший dns и доступ к нему из пыхпыха вообще и из скрипта в частности.
>тебе ж русским языком написано что адрес хоста он не может определить.
>читать вообще умеешь?Я повторюсь, но если запустить этот же скрипт из командной строки на том сервере - все великолепно работает.
>>тебе ж русским языком написано что адрес хоста он не может определить.
>>читать вообще умеешь?
>
>Я повторюсь, но если запустить этот же скрипт из командной строки на
>том сервере - все великолепно работает.Если ты запускаешь из коммандной строки, то делаешь это либо cgi, либо cli вариантом пыха, но никак не mod_php. Попробуй запустить из под апача как cgi/cli, а не mod_php; посмотри разницу в параметрах компиляции для mod_php и cli/cgi версии. Возможно mod_php был скомпилен с не той версией либы резолва, что стоит в системе.
Честно сказать, не очень представляю на предмет какого именно параметра смотреть - ставил из портов... Можешь чуть подробнее? Был бы очень признателен...
>Возможно mod_php был скомпилен с не той версией либы резолваКстати, вообще таких параметров не нашел в документации...
>>Возможно mod_php был скомпилен с не той версией либы резолва
>
>Кстати, вообще таких параметров не нашел в документации...апач случчайно не в chroot окружении запущен?
Нет.
Есть подозрение, что это проблема FreeBSD 6.2 (на сервере с FreeBSD 6.1 работает). Кто-нибудь, оттестите, пожалуйста...
Аналогичная проблема, php + apache собраны абсолютно одинково, сервера обновлялись в один день, на одних работает, на других нет. Проблема присутствует с mod_php. resolv.conf и т.д. проверял.
Проблема, похоже, во FreeBSD. Человек с такой же проблемой отписался на php.net, что после апгрейда на версию 6.3 preview проблема исчезла.