Проблемы конфигурации

Следует внимательно проанализировать все параметры конфигурации и разрешить только то, что действительно необходимо.

Параметры конфигурации РНР определяются в файле php.ini.

Параметр safe_mode- ограничивается использование некоторых потенциально опасных возможностей РНР. Для включения или выключения безопасного режима параметру safe_mode присваивается значение on или off. Механизм ограничения основан на сравнении идентификатора пользователя (UID) выполняющегося сценария с идентификатором пользователя того файла, к которому этот сценарий пытается обратиться. Если идентификаторы совпадают, функция выполняется; в противном случае попытка завершается неудачей.

Безопасный режим не может использоваться в том случае, если РНР откомпилирован в виде модуля Apache. Дело в том, что при работе РНР в режиме модуля Apache все сценарии РНР работают под тем же идентификатором, что и Apache, что не позволяет различать владельцев разных сценариев.

При включении безопасного режима действуют следующие ограничения:

· Функции ввода/вывода (в частности, fopen ( ), filе( ) и include ( )) работают только с файлами, принадлежащими владельцу сценария.

· Запуск внешних сценариев функциями popen( ), system( ) или ехес( ) разрешается лишь в том случае, если запускаемый сценарий находится в каталоге, определяемом параметром safe_mode_exec_dir.

· Новые файлы создаются только в каталогах, принадлежащих владельцу сценария.

· Аутентификация HTTP становится более жесткой, поскольку в ней также учитывается UID аутентифицирующего сценария.

· Имя пользователя, использованное при подключении к серверу MySQL, должно совпадать с именем владельца файла, вызывающего mysql_connect( ).

Функции, выполнение которых ограничивается в безопасном режим: chgrp, chmod, chown , exec, fopen, file, include, link, passthru, popen, readfile, rename, require, rmdir, symlink, system, unlink.

Рассмотрим основные параметры конфигурации.

safe_mode_exec_dir определяет каталог для размещения системных программ, запускаемых такими функциями, как system( ), exec( ) или passthru( ). Параметр используется лишь при включенном безопасном режиме.

disable_functionsзадает список через запятую имен функций, выполнение которых требуется запретить.

doc_root- присваивается путь к корневому каталогу для файлов РНР. Если значение doc_root представляет собой пустую строку, оно игнорируется и сценарии РНР выполняются в полном соответствии с URL. Если безопасный режим включен, а параметр doc_root содержит непустое значение, то сценарии РНР за пределами этого каталога выполняться не будут.

max_execution_time- указывает максимальную продолжительность выполнения сценария (в секундах). По истечении указанного срока сценарий автоматически завершается. По умолчанию параметр равен 30 секундам. Если присвоить ему 0, время выполнения сценариев не ограничивается.

memory_limitопределяет максимальный объем памяти (в байтах), используемой сценарием. По умолчанию параметр равен 8 Мбайт.

sql.safe_mode- при его включении игнорируется вся информация, передаваемая функциям mysql_connect( ) и mysql_pconnect( ), а подключения разрешаются только для UID, под которым работает web-сервер.

user_dirопределяет имя подкаталога в домашнем каталоге пользователя, в котором должны находиться исполняемые сценарии РНР.








Дата добавления: 2015-04-15; просмотров: 716;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.005 сек.