PDA

Просмотр полной версии : ошибка fsockopen() has been disabled for security reasons in


je0n
31.05.2006, 22:30
я коннектюсь к 80 порту на сайт, который находится вне хостинга (на котором запускаю скрипт) и получаю эту ошибку. Ну из ошибки-то понятно, что это хостинг запрещает коннектится к другим сайтам, а можно как-нить сделать, чтобы коннектился?
Или подскажите бесплатный хостинг, который позволяет это делать.

max_pain89
31.05.2006, 22:35
учи англицкий, скорее всего это сэйфмод так настроен (ограничивающий действия юзера и прав к разным функциям ему).
translate.ru -> функция fsockopen() заблокирована по соображениям безопасности

pch
31.05.2006, 22:40
Смотря зачем тебе это надо. Если тебе нужен только файл с удалённого хоста по протоколу http (в таком виде, в каком его отдаёт сервер), то можно использовать fopen() или file(). Если файл на ftp и сервер собран с "--enable-ftp", то можно заюзать ftp-функции (см. здесь (http://www.gigo.ru/doc/php/php4/ref.ftp.php)). А вот общение с smpt-сервером и даже POST-запрос без сокетов не получится

je0n
01.06.2006, 01:11
2 pch:
Ты сказал даже POST запрос не получится... Мне нужен GET запрос. Через сокет он не получается, есть предложения как сделать?

xShreKx
01.06.2006, 17:09
Что тебе мешает сделать так:

<?
$url="www.site.ru/page.php?get=123";
fopen("$url","режим") or DIE ("Мля...");
?>

И если что, можешь проверить такую штуку, которая выводить ту же страницу, только через тебя =)

<?
$url="www.site.ru/page.php?get=123";
readfile($url);
?>


Добавил ;)
Но проблема в том, что многие хосты (на примере холма) отказывают функциям, подобным fopen, если путь к файлу (т.е. сам файл) не принадлежит localhost-у...