Войти

Показать полную графическую версию : права доступа (в который раз)


bruder
27-04-2008, 23:44
привет всем. Нашел кучу тем тут про права но спрошу еще раз. Мне пришлось установить ubuntu, надо по работе. Я в нем НОЛЬ. Поставил апач, php, настроил виртуальные хосты. Пробую писать из php в txt файл в одной и той же директории что и скрипт, пишет что прав нет. Сделал chmod 777 на файл и директорию /var/www не помогает. Перенес виртуальный хост в мою папку /home/myfolder/ - таже песня, хотя там я хозяин. Как правильно сделать, объясните на пальцах плиз.

ruslandh
28-04-2008, 00:03
Сделал chmod 777 на файл и директорию /var/www не помогает. Перенес виртуальный хост в мою папку /home/myfolder/ - таже песня, хотя там я хозяин. Как правильно сделать, объясните на пальцах плиз.

это грубо - надосмотреть .кто хозяин, в какую группу входит и т.п. включать пользователя в нужную группу и т.д. Важно от какого пользователя запущен апач, и т.п.

bruder
28-04-2008, 00:09
да в принципе я работаю только один на компе. Везде владелец root. Как мне дать права рута? Хорошо если бы примерчик подкинули :) а то я никогда не работал с линухом

Envel
28-04-2008, 00:11
А ты проверь сначала, он туда пишет или нет. Может ты даешь относительные пути, а он воспринимает абсолютные или что-то в этом роде. Просто подобная тема была когда переносил сайт на сервак с linux, при этом он работал отлично c WinXP/apache. Причина вроде как раз в чем-то подобном была. Апач от пользователя www-data в убунте запускается (как и в Debian). Права 777, согласен, лучше не ставить.
Не надо апач под рутом запускать! И вообще сидеть под рутом не нужно.

bruder
28-04-2008, 00:25
собственно вообще путей не указывал


$handle = fopen("1.txt", "w"); // открывает без ошибок, значит находит

fwrite($handle, $somecontent); // а тут - шиш

ruslandh
28-04-2008, 00:55
да в принципе я работаю только один на компе. Везде владелец root. Как мне дать права рута? Хорошо если бы примерчик подкинули а то я никогда не работал с линухом

лучше если это права не root. По вашим словам могу сделать вывод, что Ubuntu не лучший дистрибутив в смысле безопасности.

Envel
28-04-2008, 17:29
собственно вообще путей не указывал »
Проверьте, где создается файл (и вообще, создается ли он). У меня впечатление, что нет.
Попробуйте прописать абсолютный путь. Мне, например, не ясно, где именно он создаст файл.

[mzd]
29-04-2008, 09:33
А поиск для кого создан? На запрос "php write to txt apache ubuntu" второй ссылкой Apache - problems with write permissions - Ubuntu Forums (http://ubuntuforums.org/showthread.php?t=35543)
Так вот, в последнем сообщении там сказано:
Instead, write your PHP application correctly. Use the mktemp() function or similar to create a file in a temporary directory outside the webroot, where you will have write access. This is much more secure and correct.
Перевод: Вместо этого (имеется в виду установка прав доступа на папку) напишите php-приложение правильно. Используйте функцию mktemp() или аналогичную ей, чтобы создать файл во временной папке вне папки webroot (/var/www), куда у вас будет доступ на запись. Это более безопасно и правильно.

bruder
29-04-2008, 15:00
люди, я понимаю что для вас многие вещи привычны и принимаете как само собой. Я проинсталлировал ubuntu, поставил апач и пхп + mysql. Для меня уже достижение. Куда бы я сейчас не пытался писать или даже сохранить файл, говорит нет прав. Тут надо чтото сделать простое наверно, права мне повысить или чтото в этом роде. Как мне это сделать? Я не могу эту папку временную создать. Долбанные мануалы, в которых пишут сделайте chmod. Если я сделаю это с sudo наверно только для рута и сделаю chmod? Не по человечески это все, тратить столько времени на изучение а работать когда? Уже глаза в кучу и бошка трещит, и это еще ubuntu проще чем другие линухи. Катастрофа

[mzd]
29-04-2008, 16:07
bruder, вы не можете создать папку средствами PHP? Как именнно вы это делаете? Используете приведенный выше пример или приняли к сведению мой предыдущий пост?
Не по человечески это все, тратить столько времени на изучение а работать когда? »
Смешно, можно подумать, PHP вы с пеленок знаете.




© OSzone.net 2001-2012