За последние 24 часа нас посетили 23586 программистов и 1846 роботов. Сейчас ищут 1650 программистов ...

Функция COPY() "зависает" и грузит процессор.

Тема в разделе "Установка PHP", создана пользователем zubr2, 30 окт 2009.

  1. zubr2

    zubr2 Активный пользователь

    С нами с:
    29 окт 2009
    Сообщения:
    1
    Симпатии:
    0
    Windows NT XOR 5.2 build 3790
    Microsoft-IIS/6.0
    PHP Version 5.2.3

    В PHP.ini open_basedir="c:\www"

    Это:

    PHP:
    1. @mkdir('_testupload');
    2. copy('http://ya.ru/logo.png','_testupload/test.png');
    грузится "вечно" - значительно дольше 90 секунд которыми ограничена работа любого скрипта PHP. На экране браузера пустота. Процесс жрет 15% процессора (все 4 ядра) и постепенно доходит до 50%. Удаленный файл картинки любой.

    Там же успешно выполняется это:

    PHP:
    1. if($f=fopen('http://ya.ru/logo.png','r')){
    2.     echo 'open';
    3.     $txt=fread($f,100);
    4.     echo '<br>Первые 100 прочитанных байт:<br>'.htmlspecialchars($txt).'<br>';
    5.     }else{
    6.     echo 'error open';
    7.     }
    8. fclose($f);
    9. $f=fopen('_testupload/test.png','w');
    10. fwrite($f,$txt);
    11. fclose($f);
    12.  
    Если параметр "open_basedir" в PHP.ini убираем, то зависания пропадают. Все скрипты работают за долю секунды.

    Вопрос: почему виснет команда COPY() и как лечить?