Как определить заблокированные функции ПХП?

Тема в разделе "Хостинг", создана пользователем iBolit, 11 июн 2007.

Статус темы:
Закрыта.
Модераторы: Aste, stooper
  1. iBolit

    iBolit Прохожие

    Как выяснить, какие функции ПХП урезаны на хостинге?Кажется, phpinfo() такую информацию не выдает.
     
  2. General Fizz

    General Fizz Боевой Генерал :)

    Регистр.:
    11 апр 2007
    Сообщения:
    753
    Симпатии:
    396
    Просмотреть выдачу phpinfo() ;) на предмет наличия safemode on и параметры disable_classes и disable_functions.

    После этого прочитать в мануале пхп какие функции блокируются при safemode on.
     
  3. iBolit

    iBolit Прохожие

    Сенк, в самом деле. Как-то я раньше на замечал эти две строчки. Много букав. :)
    Вот еще скриптец коротенький, выдает отсортированный список - может, кому пригодится (бывает, phpinfo тоже заблокирована :D ).

    PHP:
    <?php
    error_reporting
    (E_ALL);
    $disabled_functions ini_get('disable_functions');
    if (
    $disabled_functions!='')
    {
    $arr explode(','$disabled_functions);
    sort($arr);
    echo 
    'Disabled functions:<br>';
    for (
    $i=0$i<count($arr); $i++)
    {
    echo 
    $i.' - '.$arr[$i].'<br>';
    }
    }
    else
    {
    echo 
    'No functions disabled';
    }
    ?> 
     
  4. General Fizz

    General Fizz Боевой Генерал :)

    Регистр.:
    11 апр 2007
    Сообщения:
    753
    Симпатии:
    396
    Исчо бывает так, что вроде в пхп все разрешено, но некоторые функции/команды операционной системы заблокированы, поскольку для выполнения их урезаны права доступа или не прописан путь. Пример - по умолчанию после установки пхп путь к сендмылу прописан так: /usr/sbin/sendmail -t -i , но если вместо сендмыла стоит постфикс или еще какая-нить хрень, то естественно отправка мыла из пхп работать не будет. Проверить это нельзя никак иначе чем методом проб исполнения каждой нужной функции или команды.

    В Апаче есть директива Options IncludesNoEXEC, которая запрещает выполнение CGI-сценариев в соответствующем контексте, правда я не проверял, как она коррелирует с выполнением пхп функций, поэтому по ней точно сказать не могу.

    Если функция phpinfo() заблокирована, то **х вообще такой хостинг, пусть его владельцы своими смешными рожами сами себя и веселят. :D
     
  5. iBolit

    iBolit Прохожие

    Ага, что-то типа


    фраза какая-то двусмысленная - команды имеются в виду из-под exec
     
  6. WebSpider

    WebSpider Постоялец

    Регистр.:
    21 ноя 2006
    Сообщения:
    82
    Симпатии:
    1
    На выполнение PHP скриптов директива Options IncludesNoExec никак не влияет
     
Статус темы:
Закрыта.