Страница 1 из 1

fsockopen()

Добавлено: Сб июн 18, 2011 17:30
baytuch
Господа эксперты, подскажите пожалуйста, как разрешить/включить использование этой функции...
На данный момент:
allow_url_fopen = On;
Подключенные модули:
extension=bcmath.so
extension=bz2.so
extension=calendar.so
extension=ctype.so
extension=curl.so
extension=dba.so
extension=dbase.so
extension=exif.so
extension=ftp.so
extension=gettext.so
extension=gd.so
extension=gmp.so
extension=iconv.so
extension=ldap.so
extension=mbstring.so
extension=mhash.so
extension=mysql.so
extension=mysqli.so
extension=openssl.so
extension=pdo.so
extension=pdo_mysql.so
extension=pdo_sqlite.so
extension=pspell.so
extension=shmop.so
extension=snmp.so
extension=soap.so
extension=sqlite.so
extension=tokenizer.so
extension=wddx.so
extension=xsl.so
extension=zip.so
extension=zlib.so
Модуля sockets.so , как видно, нет... В нем причина ( в его отсутствии )?
О то что-то запутался... :?

Добавлено: Пн июн 20, 2011 13:26
baytuch
Прошу помощи...

Добавлено: Пн июн 20, 2011 14:25
dobs
Это дефолтный модуль и устанавливать отдельно его нет необходимости, что выдает если заюзать код:

Код: Выделить всё

<?php
$fp = fsockopen("www.i.ua", 80, $errno, $errstr, 30);
if (!$fp) {
    echo "$errstr ($errno)<br />\n";
} else {
    $out = "GET / HTTP/1.1\r\n";
    $out .= "Host: www.example.com\r\n";
    $out .= "Connection: Close\r\n\r\n";
    fwrite($fp, $out);
    while (!feof($fp)) {
        echo fgets($fp, 128);
    }
    fclose($fp);
}
?>
Работать будет конечно же только на ВПС...

Добавлено: Пн июн 20, 2011 14:38
baytuch
http://www.my-server.km.ua/scripts/test.php

Warning: fsockopen() [function.fsockopen]: php_network_getaddresses: getaddrinfo failed: Temporary failure in name resolution in /var/www/htdocs/scripts/test.php on line 2

Warning: fsockopen() [function.fsockopen]: unable to connect to www.i.ua:80 (php_network_getaddresses: getaddrinfo failed: Temporary failure in name resolution) in /var/www/htdocs/scripts/test.php on line 2
php_network_getaddresses: getaddrinfo failed: Temporary failure in name resolution (0)

Добавлено: Пн июн 20, 2011 14:58
baytuch
Если просто указать ап - адрес, то работает...

Добавлено: Пн июн 20, 2011 15:27
dobs
А если перезагрузить апачь и попробовать еще разок скрипт запустить?

Добавлено: Пн июн 20, 2011 16:12
0z0n
Скорее всего, что-то с DNS. Если бы ты погуглил, как я предлагал, уже бы решил вопрос :evil:

И да, попробуй ребутнуть апач, как предложили выше.

Добавлено: Пн июн 20, 2011 18:34
baytuch
Думаю, что таки НС, так как домен localhost сканится без проблем...
А почему пых не видет НС?..

Добавлено: Пн июн 20, 2011 18:48
dobs
Дык после перезапуска апача заработало или нет?

Добавлено: Пн июн 20, 2011 18:49
baytuch
Нет...

Добавлено: Пн июн 20, 2011 20:02
baytuch
После добавления домена в hosts, функция работает...

Добавлено: Пн июн 20, 2011 22:48
dobs
Че тут?
/etc/resolv.conf

Добавлено: Пн июн 20, 2011 23:16
baytuch
root@Laptop:/# cat /etc/resolv.conf
domain .
nameserver 193.41.60.30 #kppp temp entry
nameserver 193.41.60.18 #kppp temp entry

Добавлено: Пн июн 20, 2011 23:18
dobs
Походу должно быть так (если это ВПС)
nameserver 62.149.26.130
nameserver 62.149.2.52
nameserver 62.149.2.60

+ никаких текстов внутри аля "domain ."

После изменений надо ребутнуть апач...

Добавлено: Вт июн 21, 2011 01:15
baytuch
Дошло... :)
Но почему команда httpd -k restart не давала результата?..

В общем, то проблема в том, что апач то у меня на автозапуске. То есть он начинает работать до запуска KDE. Соответственно, он еще не видет нс, по скольку они будут извесны после запуска интернет - соединения...

После запуска оболочки, запускаем нет и получем IP - адреса NS, но апач их уже не видит...

Однозначно, нужен скрипт, который будет запускать свю серверную кухну ярлычком на робчем столе...
( запустил так:
httpd -k stop;
httpd -k start;
);

Всем спасибо за помощь. Отлельное спасибо нашему модеру Dobs'у