Автор Тема: ? по ограничениям safe_mode  (Прочитано 4237 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Mog.

  • Фанат форума
  • Ветеран
  • *****
  • Сообщений: 828
  • +0/-0
  • 0
    • Просмотр профиля
? по ограничениям safe_mode
« : 08 Мая 2004, 09:23:43 »
PHP работает в safe_mode
Запускаю следующий скрипт

<?
$dir="mydir";
$file="myfile";
$str="my string";

mkdir($dir);
chmod($dir0777);
$fh=fopen("$dir/$file""w");
fwrite($fh$str);
fclose($fh);
?>

Получаю на выходе
1. Соданный каталог
2. Warning: fopen(): SAFE MODE Restriction in effect. The script whose uid is 13036 is not allowed to access "путь" owned by uid 65534 in путь/x.php on line 8

Делаю вывод, что в данном режиме в созданный каталог ничего записать нельзя.
[off]И чета мне грустно так стало[/off]

Вот хотелось бы знать, а правильный ли я сделал вывод из всего этого.
Все болезни от нервов, только сифилис от удовольствия

Оффлайн FreeSpace

  • Штатный лодырь
  • Ветеран
  • *****
  • Сообщений: 613
  • +0/-0
  • 2
    • Просмотр профиля
    • http://www.infinity.com.ua
? по ограничениям safe_mode
« Ответ #1 : 08 Мая 2004, 15:48:04 »
Цитировать
Mog.:
Warning: fopen(): SAFE MODE Restriction in effect. The script whose uid is 13036 is not allowed to access "путь" owned by uid 65534 in путь/x.php on line 8


А "путь" == $dir?
Просто странная какая-то ошибка, вроде всё должно нормально работать.
Может, перед варнингом на fopen есть варнинг на mkdir?
Программирование - это единственное искусство, которое способно воплотить столь уникальное сочетание эстетики и функциональности.

Оффлайн Mog.

  • Фанат форума
  • Ветеран
  • *****
  • Сообщений: 828
  • +0/-0
  • 0
    • Просмотр профиля
? по ограничениям safe_mode
« Ответ #2 : 08 Мая 2004, 15:52:55 »
"путь" абсолютный. Пробовал $dir с абсолютным путем, эффект тот же.
варнинг самый первый, каталог создается. А потом сыплет варнинги на фопен, фврайт и фклоуз грит нет, мол такого файла.
Все болезни от нервов, только сифилис от удовольствия

Оффлайн FreeSpace

  • Штатный лодырь
  • Ветеран
  • *****
  • Сообщений: 613
  • +0/-0
  • 2
    • Просмотр профиля
    • http://www.infinity.com.ua
? по ограничениям safe_mode
« Ответ #3 : 08 Мая 2004, 15:58:10 »
Пусть будет абсолютный. Но он ведет в то же место, что и $dir?
Потому что если нет, то это совсем уже странно...
Если директория $dir создается успешно, посмотри её uid.
Если он не совпадает с твоим уидом, наверное надо пинать админа, чего-то он напортачил...
Программирование - это единственное искусство, которое способно воплотить столь уникальное сочетание эстетики и функциональности.

Оффлайн Mog.

  • Фанат форума
  • Ветеран
  • *****
  • Сообщений: 828
  • +0/-0
  • 0
    • Просмотр профиля
? по ограничениям safe_mode
« Ответ #4 : 08 Мая 2004, 18:13:08 »
Цитировать
FreeSpace:
он ведет в то же место, что и $dir?
Да

Цитировать
FreeSpace:
директория $dir создается успешно, посмотри её uid
Э... Честно гря я  в этом не силен. Как посмотреть (и свой заодно).
Цитировать
FreeSpace:
надо пинать админа
Вот это вряд ли получится.
Все болезни от нервов, только сифилис от удовольствия

Оффлайн FreeSpace

  • Штатный лодырь
  • Ветеран
  • *****
  • Сообщений: 613
  • +0/-0
  • 2
    • Просмотр профиля
    • http://www.infinity.com.ua
? по ограничениям safe_mode
« Ответ #5 : 08 Мая 2004, 18:20:10 »
Если используешь FlashFXP в качестве FTP-клиента, то там есть колонка Owner. Посмотри, чтобы в этой колонке напротив mydir стоял твой аккаунт. В других FTP-клиентах должна быть аналогичная колонка или овнера (тот же uid) можно посмотреть в свойствах удаленного файла.
В никсах я не силен, но если есть доступ к шеллу, наверняка есть какой-то параметр для ls, который может включить отобразжение овнеров в списке файлов. Так что man ls.
Программирование - это единственное искусство, которое способно воплотить столь уникальное сочетание эстетики и функциональности.

Оффлайн FreeSpace

  • Штатный лодырь
  • Ветеран
  • *****
  • Сообщений: 613
  • +0/-0
  • 2
    • Просмотр профиля
    • http://www.infinity.com.ua
? по ограничениям safe_mode
« Ответ #6 : 08 Мая 2004, 18:22:12 »
А твой уид - 13036.
Это видно из сообщения об ошибке, если конечно овнером скрипта x.php являешься ты.
Программирование - это единственное искусство, которое способно воплотить столь уникальное сочетание эстетики и функциональности.

Оффлайн Mog.

  • Фанат форума
  • Ветеран
  • *****
  • Сообщений: 828
  • +0/-0
  • 0
    • Просмотр профиля
? по ограничениям safe_mode
« Ответ #7 : 08 Мая 2004, 19:23:42 »
Поразбирался с uid\'ами.
Получается :
скрипт мой 13036, запускает его юзер(никто) 65534, каталог скриптом создается (т.к. все мое) и при создании получает владельца 65534; мой скрипт в safe_mode не имеет права туда писать, отсюда ошибка.
[OFF]Вывод - перепишу все, к черту, на Perl[/OFF]
Все болезни от нервов, только сифилис от удовольствия

Оффлайн FreeSpace

  • Штатный лодырь
  • Ветеран
  • *****
  • Сообщений: 613
  • +0/-0
  • 2
    • Просмотр профиля
    • http://www.infinity.com.ua
? по ограничениям safe_mode
« Ответ #8 : 08 Мая 2004, 21:27:25 »
Сорри, торможу сегодня совсем.
Такое поведение - вполне нормальное.
mkdir() в выполняет апач с правами nobody. Соответственно, уид у директории будет ноубоди. А вот уид твоего скрипта будет твоим. Поэтому в этой директории твой скрипт файлы создавать не сможет.
Попроси админа вырубить сейф-моуд. Если хостинг нормальный, то вопросов быть не должно.
Программирование - это единственное искусство, которое способно воплотить столь уникальное сочетание эстетики и функциональности.

Оффлайн Mog.

  • Фанат форума
  • Ветеран
  • *****
  • Сообщений: 828
  • +0/-0
  • 0
    • Просмотр профиля
? по ограничениям safe_mode
« Ответ #9 : 13 Мая 2004, 18:12:09 »
Короче сделал я "инсталятор" для скриптов, который нужные скрипты создает и каталог делает (в котором эти скрипты и резвятся).
А вот функция filesize все одно не хочет работать, грит нет прав на доступ в каталог и показывает мне тот каталог. И каталог кажет с абсолютным путем, точнее, абсолютный путь до каталога с которого начинается веб. Уж я её и с абсолютными путями и с относительными, а она ни в какую, зараза. :)
Вот такая вот ректальная аденотомия получилась.
Все болезни от нервов, только сифилис от удовольствия

 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28