Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: fopen на удаленный сервер
Форумы портала PHP.SU » PHP » Программирование на PHP » fopen на удаленный сервер

Страниц (1): [1]
 

1. Wikly - 19 Июня, 2013 - 20:54:15 - перейти к сообщению
Доброго времени суток всем...

Возникла проблема...

Имеется:
сайт на бесплатном хостинге ayola, в котором реализована функция скачивания фала по временной ссылке (из статьи http://blog.webmasterschool.ru/category/php/)

web Сервер на bactrack 5 r2 (ubuntu) на домашнем компе с постоянным ип адресом...

Проблема:
при реализации скрипта (из статьи http://blog.webmasterschool.ru/category/php/) при расположении скачиваемых файлов на сервере сайта, нет никаких проблем.. Все отлично работает.
Но при изменении ссылки на файл удаленного сервера, скачивание не происходит.

откопал функции для проверки наличия фала на удаленном сервере, для получения размера и последнего изменения файла.

Но скрипт встает на строках:
PHP:
скопировать код в буфер обмена
  1.   $handle = @fopen( $filename, 'rb' );
  2.  
  3.    if( !$handle ){
  4.     header ( 'HTTP/1.1 502 Bad Gateway' );
  5.     die();
  6.   }


т.е. я так понимаю что скрипту не удается открыть файл $filename если $filename = 'http://188.191.***.***/file.rar';

при echo $filename - ничего не выводит...

Подскажите пожалуйста решение данной проблемки...

заранее спасибо всем откликнувшимся...
2. DeepVarvar - 19 Июня, 2013 - 21:00:03 - перейти к сообщению
3. Wikly - 20 Июня, 2013 - 06:51:46 - перейти к сообщению
DeepVarvar пишет:


За ссылочку благодарю.

но дело в том что при запуске скрипта который содержит всего несколько строк:

PHP:
скопировать код в буфер обмена
  1. $filename = 'http://188.191.**.**/dl/file.rar';
  2.  $handle = @fopen( $filename, 'rb' );
  3.  
  4.  
  5.   // если не удалось
  6.   if( !$handle ){
  7.     header ( 'HTTP/1.1 502 Bad Gateway' );
  8.     die();
  9.   }
  10.   echo $handle;


на сервере где расположены файл file.rar - всё прекрасно работает.

При переносе этого скрипта на хостинг ayola - благополучно вылетает 502!

Сам файл по ссылке http://188[dot]191[dot]**[dot]**/dl/file[dot]rar доступен и любым браузером отлично качается...

Может быть что в настройках сервера 188.191.**.** где то заблокирована работа fopen???

Смотрел в php.ini, там вроде все норм:

allow_url_fopen On On
(Добавление)
Спасибо.
Разобрался.

На айоле отключена ф-я allow_url_fopen.

Подскажите, может есть другой путь, не используя fopen?
4. Мелкий - 20 Июня, 2013 - 08:45:45 - перейти к сообщению
Wikly пишет:
может есть другой путь, не используя fopen?

curl

 

Powered by ExBB FM 1.0 RC1