|
Ниже приведен, вероятно, неполный и, возможно, не вполне корректный список
функций, ограниченных в
защищенном режиме.
Таблица 42-2. Функции, ограниченные в безопасном режиме Функция | Ограничения |
---|
dbmopen() | Проверяет, имеют ли файлы/каталоги, с которыми
вы собираетесь работать, такой же UID (владельца), как и выполняемый скрипт. | dbase_open() | Проверяет, имеют ли файлы/каталоги, с которыми
вы собираетесь работать, такой же UID (владельца), как и выполняемый скрипт. | filepro() | Проверяет, имеют ли файлы/каталоги, с которыми
вы собираетесь работать, такой же UID (владельца), как и выполняемый скрипт. | filepro_rowcount() | Проверяет, имеют ли файлы/каталоги, с которыми
вы собираетесь работать, такой же UID (владельца), как и выполняемый скрипт. | filepro_retrieve() | Проверяет, имеют ли файлы/каталоги, с которыми
вы собираетесь работать, такой же UID (владельца), как и выполняемый скрипт. | ifx_* | sql_safe_mode ограничения (не путать с safe_mode) | ingres_* | sql_safe_mode ограничения (не путать с safe_mode) | mysql_* | sql_safe_mode ограничения (не путать с safe_mode) | pg_lo_import() | Проверяет, имеют ли файлы/каталоги, с которыми
вы собираетесь работать, такой же UID (владельца), как и выполняемый скрипт. | posix_mkfifo() | Проверяет, имеет ли каталог, с которым
вы собираетесь работать, такой же UID (владельца), как и выполняемый скрипт. | putenv() | Подчиняется настройкам the safe_mode_protected_env_vars и
safe_mode_allowed_env_vars. Ознакомьтесь с более подробным описанием
функции putenv(). | move_uploaded_file() | Проверяет, имеют ли файлы/каталоги, с которыми
вы собираетесь работать, такой же UID (владельца), как и выполняемый скрипт. | chdir() | Проверяет, имеет ли каталог, с которым
вы собираетесь работать, такой же UID (владельца), как и выполняемый скрипт. | dl() | Эта функция недоступна в
безопасном режиме. | backtick operator | Эта функция недоступна в
безопасном режиме. | shell_exec() (функция эквивалентна backticks) | Эта функция недоступна в
безопасном режиме. | exec() | Вы можете запускать исполняемые файлы, ограниченные деревом
каталогов, указанным в safe_mode_exec_dir.
Исходя из практических соображений, использовать ..
при указании пути запрещено. Следует заметить, что к аргументу этой функции
применяется escapeshellcmd().
| system() | Вы можете запускать исполняемые файлы, ограниченные деревом
каталогов, указанным в safe_mode_exec_dir.
Исходя из практических соображений, использовать ..
при указании пути запрещено. Следует заметить, что к аргументу этой функции
применяется escapeshellcmd()
| passthru() | Вы можете запускать исполняемые файлы, ограниченные деревом
каталогов, указанным в safe_mode_exec_dir.
Исходя из практических соображений, использовать ..
при указании пути запрещено. Следует заметить, что к аргументу этой функции
применяется escapeshellcmd().
| popen() | Вы можете запускать исполняемые файлы, ограниченные деревом
каталогов, указанным в safe_mode_exec_dir.
Исходя из практических соображений, использовать ..
при указании пути запрещено. Следует заметить, что к аргументу этой функции
применяется escapeshellcmd().
| fopen() | Проверяет, имеет ли каталог, с которым
вы собираетесь работать, такой же UID (владельца), как и выполняемый скрипт. | mkdir() | Проверяет, имеет ли каталог, с которым
вы собираетесь работать, такой же UID (владельца), как и выполняемый скрипт. | rmdir() | Проверяет, имеет ли каталог, с которым
вы собираетесь работать, такой же UID (владельца), как и выполняемый скрипт. | rename() | Проверяет, имеют ли файлы/каталоги, с которыми
вы собираетесь работать, такой же UID (владельца), как и выполняемый скрипт. Проверяет, имеет ли каталог, с которым
вы собираетесь работать, такой же UID (владельца), как и выполняемый скрипт. | unlink() | Проверяет, имеют ли файлы/каталоги, с которыми
вы собираетесь работать, такой же UID (владельца), как и выполняемый скрипт. Проверяет, имеет ли каталог, с которым
вы собираетесь работать, такой же UID (владельца), как и выполняемый скрипт. | copy() | Проверяет, имеют ли файлы/каталоги, с которыми
вы собираетесь работать, такой же UID (владельца), как и выполняемый скрипт. Проверяет, имеет ли каталог, с которым
вы собираетесь работать, такой же UID (владельца), как и выполняемый скрипт. (Для
параметров source и
target). | chgrp() | Проверяет, имеют ли файлы/каталоги, с которыми
вы собираетесь работать, такой же UID (владельца), как и выполняемый скрипт. | chown() | Проверяет, имеют ли файлы/каталоги, с которыми
вы собираетесь работать, такой же UID (владельца), как и выполняемый скрипт. | chmod() | Проверяет, имеют ли файлы/каталоги, с которыми
вы собираетесь работать, такой же UID (владельца), как и выполняемый скрипт. Кроме того, вы не можете
устанавливать UID, SGID и sticky-биты. | touch() | Проверяет, имеют ли файлы/каталоги, с которыми
вы собираетесь работать, такой же UID (владельца), как и выполняемый скрипт. Проверяет, имеет ли каталог, с которым
вы собираетесь работать, такой же UID (владельца), как и выполняемый скрипт. | symlink() | Проверяет, имеют ли файлы/каталоги, с которыми
вы собираетесь работать, такой же UID (владельца), как и выполняемый скрипт. Проверяет, имеет ли каталог, с которым
вы собираетесь работать, такой же UID (владельца), как и выполняемый скрипт.
(Замечание: проверка выполняется только для параметра target)
| link() | Проверяет, имеют ли файлы/каталоги, с которыми
вы собираетесь работать, такой же UID (владельца), как и выполняемый скрипт. Проверяет, имеет ли каталог, с которым
вы собираетесь работать, такой же UID (владельца), как и выполняемый скрипт.
(Замечание: проверка выполняется только для параметра target)
| apache_request_headers() | В защищенном режиме, заголовки, начинающиеся с 'authorization'
(независимо от регистра), не возвращаются. | header() | В защищенном режиме, текущий UID скрипта будет добавлен к
realm-части заголовка
WWW-Authenticate, если вы его устанавливаете
(используется для HTTP-аутентификации) | переменные PHP_AUTH |
В защищенном режиме, переменные PHP_AUTH_USER,
PHP_AUTH_PW, и AUTH_TYPE
недоступны как элементы массива $_SERVER.
Несмотря на это, вы все еще можете использовать переменную
REMOTE_USER для идентификации пользователя.
(Замечание: актуально только для PHP 4.3.0 и выше)
|
highlight_file(),
show_source()
|
Проверяет, имеют ли файлы/каталоги, с которыми
вы собираетесь работать, такой же UID (владельца), как и выполняемый скрипт. Проверяет, имеет ли каталог, с которым
вы собираетесь работать, такой же UID (владельца), как и выполняемый скрипт. (Замечание: актуально только для PHP 4.2.1 и выше)
|
parse_ini_file()
|
Проверяет, имеют ли файлы/каталоги, с которыми
вы собираетесь работать, такой же UID (владельца), как и выполняемый скрипт. Проверяет, имеет ли каталог, с которым
вы собираетесь работать, такой же UID (владельца), как и выполняемый скрипт. (Замечание: актуально только для PHP 4.2.1 и выше)
|
set_time_limit()
|
Не имеет никакого эффекта, если безопасный режим используется
|
max_execution_time
|
Не имеет никакого эффекта, если безопасный режим используется
|
mail()
|
В защищенном режиме пятый параметр недоступен.
(Замечание: актуально только для PHP 4.2.3 и выше)
| Любая функция, которая использует
php4/main/fopen_wrappers.c
| Временно не документировано |
| |