[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: SAFE MODE
Семён
SAFE MODE: ON

Class для загрузки файла - изображения выдаёт:
Код
Warning: putenv() [function.putenv]: Safe Mode warning: Cannot set environment variable 'MAGIC' - it's not in the allowed list in /www/mysite/class/img/class.upload.php on line 1773


Как я понял SAFE MODE заблокировал функции..
Как их добавить в исключения?

Выключать SAFE MODE - критически нельзя!



Спустя 20 минут, 31 секунда (19.02.2009 - 03:14) LoneCat написал(а):
Как поведал мне мануал по PHP - сейф-комод в любом случае накладывает ограничения на функцию putenv(), ограничения в виде двух директив php.ini:
В директиве safe_mode_allowed_env_vars указываются префиксы переменных окружения, значение которых можно будет изменять с помощью putenv(), тоесть чтобы иметь возможность изменить PHP_FOO должен быть указан префикс PHP_. Если в директиве не указано ничего - с помощью putenv() можно изменить любую переменную окружения.
В директиве safe_mode_protected_env_vars указываются переменные окружения, которые нельзя изменить с помощью putenv(), она превалирует над предыдущей директивой.
Статус этих директив - PHP_INI_SYSTEM, тоесть их значение можно установить только в php.ini или httpd.conf.

Соот-но в твоем случае интерпритатор ругается что переменной окружения, кооторую пытается изменить скрипт - нет в списке разрешенных.

Спустя 7 минут, 17 секунд (19.02.2009 - 03:21) Семён написал(а):
Спасибо LoneCat
Вот что поточнее мне нужно добавить из базовых функций? )

Спустя 11 минут, 11 секунд (19.02.2009 - 03:32) Семён написал(а):
Точнее я бы сказал так: "Куда вписать и как в точном формате? )"

Спустя 5 минут (19.02.2009 - 03:37) LoneCat написал(а):
Из функций - ничего, в php.ini нужно добавить строку
Код
safe_mode_allowed_env_vars = PHP_,MAGIC

По-идее должно сработать, хотя на самом деле тут должен быть префикс переменной MAGIC, но вот засада - у нее его нет smile.gif Если не сработает - тогда остается только:
Код
safe_mode_allowed_env_vars =

Когда директива пуста - разрешено редактировать любые переменные окружения, не запрещенные посредством safe_mode_protected_env_vars.
Ну или только править сам скрипт.

Спустя 1 минута, 43 секунды (19.02.2009 - 03:39) LoneCat написал(а):
Да, и в php.ini эта директива в теории уже есть, так что в идеале ее нужно найти и заменить, а не дописать в конец.

Спустя 10 минут, 17 секунд (19.02.2009 - 03:49) Семён написал(а):
спасибо помогло )

Спустя 2 минуты, 11 секунд (19.02.2009 - 03:51) Семён написал(а):
хммм.. ошибка пропала но файл не загружается.... по прежнему)

Спустя 5 минут, 53 секунды (19.02.2009 - 03:57) Семён написал(а):
Но похоже изза того что нет доступа к папке. )

Спустя 6 минут, 1 секунда (19.02.2009 - 04:03) Семён написал(а):
Интересная ситуация.
допустим есть папка uploads\ и в ней файлы
если вызвать site.ru\uploads\ то пишет
Код
Forbidden
You don't have permission to access /upload/ on this server.

Зато если вызавать так:
site.ru\uploads\1.jpg
то загрузит изображение из этой папки - нормально.
и так происходит с каждой папкой....
как это можно исправить? )

Спустя 9 минут, 7 секунд (19.02.2009 - 04:12) kirik написал(а):
Цитата (Семён @ 18.02.2009 - 20:03)
Forbidden
You don't have permission to access /upload/ on this server.

Насколько я понимаю он ругается на то, что ты хочешь просмотреть файлы в папке, индекс которой запрещен. Создай в ней .htaccess файл и добавь в него
Код
Options +Indexes

Спустя 10 минут, 32 секунды (19.02.2009 - 04:23) Семён написал(а):
Всё ребята, избавился от этого "мудадельного XAMPP под Linux" и вернулся на чистый апач smile.gif

Всё работает, особенно спс Lone. smile.gif
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.