LINUX.ORG.RU

помогите оседлать права в PHP.


0

0

Работает Сервак по юзером www, есть скрипт test.php в котором стоит:

$fp=@fopen("gla.html", "w+"); fwrite($fp, "тест"); fclose($fp);

скрипт под правами domin и в группе www. вообщем как и все скрипты. Выдает: Warning: fopen(/home/domin/www/gla.html): failed to open stream: Permission denied in /home/domin/www/test.php on line 12

Warning: fwrite(): supplied argument is not a valid stream resource in /home/domin/www/test.php on line 13

Warning: fclose(): supplied argument is not a valid stream resource in /home/domin/www/test.php on line 14

Почему Permission denied? Что не так, почему запись блокируется?

anonymous

Re: помогите оседлать права в PHP.

Права на файл скрипта неважны (в смысле , раз запускается - значит, хватает). В какие группы входит www, и какие права на /home/domin/www?

anonymous ()
Ответ на: Re: помогите оседлать права в PHP. от anonymous

Re: помогите оседлать права в PHP.

www входит в группу: www (т.е. www:www (пользователь:группа)). права на /home/domin/www domin:www, на файлах то же domin:www

anonymous ()

Re: помогите оседлать права в PHP.

О_О

Вы чего, черти :-)

Тут же белым по синему написано, что пользователю www из группы www не хватает прав, чтобы открыть файл gla.html для записи.

Anoxemian ★★★★★ ()
Ответ на: Re: помогите оседлать права в PHP. от anonymous

Re: помогите оседлать права в PHP.

> права на /home/domin/www domin:www, на файлах то же domin:www

Это владельцы, а права? Там, видимо, что-то типа 644 стоит - группе писать запрещено.

anonymous ()
Ответ на: Re: помогите оседлать права в PHP. от anonymous

Re: помогите оседлать права в PHP.

Там и стоит на файлах 664, папка 755 юзер и группа та же самая. Удалил gla.html По идее: $fp=@fopen("gla.html", "w+"); fwrite($fp, "тест"); fclose($fp);

Должна создать новый файл и вписать туда данные, но он даже не создаётся выдаётся таже ошибка: Warning: fopen(/home/domin/www/gla.html): failed to open stream: Permission denied in /home/domin/www/test.php on line 12

Warning: fwrite(): supplied argument is not a valid stream resource in /home/domin/www/test.php on line 13

Warning: fclose(): supplied argument is not a valid stream resource in /home/domin/www/test.php on line 14

anonymous ()
Ответ на: Re: помогите оседлать права в PHP. от anonymous

Re: помогите оседлать права в PHP.

Пхп у меня работает как модуль Апача. Хотя честно сказать я во обще не могу понять где искать ошибку :(

anonymous ()
Ответ на: Re: помогите оседлать права в PHP. от anonymous

Re: помогите оседлать права в PHP.

Вообщем это в php.ini запустил на двух машинах на одном заработоло, единственная разница между ними это php.ini, т.ч. может кто колдовал на ним?

anonymous ()

Re: помогите оседлать права в PHP.

Работает не php-скрипт, а интерпретатор, который судя по всему модуль апача. Поэтому процесс, который пытается получить доступ к файлу работает с правами пользователя под которым запущен апач-сервер. Тут только два выхода: дать доступ к перезаписываемому файлу серверу апач или запускать php как cgi и пользовать suexec

msv ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.