Для отключения PHP функций в файле php.ini найдите директиву disable_functions и допишите в качестве её значения через запятую функции, которые вы хотите отключить.
В целях безопасности рекомендуют отключать следующие функции:
disable_functions =exec,passthru,shell_exec,system,proc_open,popen,curl_exec,curl_multi_exec,parse_ini_file,show_source,base64_decode
Также по причинам безопасности рекомендуется отключать allow_url_include и allow_url_fopen:
allow_url_fopen=Off allow_url_include=Off
На самом деле, это не очень действенные меры — в первую очередь рекомендуется следить за безопасностью скриптов, работающих на веб-сервере, особенно за фильтрацией в них данных, принимаемых от пользователей.
Ошибка «Warning: …() has been disabled for security reasons in…»
Если вы столкнулись с ошибкой со словами been disabled for security reasons, например такой:
Warning: passthru() has been disabled for security reasons in /srv/http/test_11.php on line 3
То это означает, что системный администратор на вашем хостинге или веб-сервере отключил обозначенную функцию (в данном случае это passthru).
Если похожая ошибка возникла на вашем веб-сервере, то откройте файл php.ini и найдите там директиву disable_functions. После этого удалите из списка нужную вам функцию и перезапустите веб-сервер.
Дополнительную информацию по вопросам безопасности при отключении функций смотрите в более подробной статье «Как отключить определённые функции в PHP».
Связанные статьи:
- Что делать если PHP скрипту не хватает времени и памяти. Почему большой файл не загружается на сайт или в phpMyAdmin (100%)
- Почему не работают короткие теги в PHP (100%)
- Как изменить количество цифр после запятой в PHP. Как увеличить точность вычислений в PHP (100%)
- Как установить веб-сервер Apache с PHP, MySQL и phpMyAdmin на Windows (100%)
- Для чего нужна и как использовать open_basedir (100%)
- Как обновить Apache на Windows (RANDOM - 50%)