Доброе время суток, всезнающий All.PHP не пишет в файл на сервере Apache под Linux.
Пробовал исходники на Apache под Windows 2000 -все отрабатывает.
Пробовал на локали. По сети писать не пробовал, негде.
Кусок файла:<?
if(isset($submit)):
$file="users/text.html";
if(!$open_file = fopen($file, "a")):
print("Error! File can`t be opened!");
else:
$date = date("d.m.Y H:i");
$comments = "<hr>Комментарий оставил: $name, $email в $date.\n\nЕго коментарий: $feedback\n\n<hr>";
fwrite($open_file,$comments);
fclose($open_file);
endif;
else:
?>
<form action="comments.php" method="POST"><p>Напишите Ваши пожелания:
<br> <textarea name="feedback" cols="40" rows="10">
Из под кого работает апач? Есть ли права на запись в этот файл?
>Из под кого работает апач? Есть ли права на запись в этот
>файл?
Стоит ASPLinux 9.0
Апатч я запускал с правами рута с консоли.
Правильно ли, что я назначил права на запись в файл апачу?
>>Из под кого работает апач? Есть ли права на запись в этот
>>файл?
>Стоит ASPLinux 9.0
>Апатч я запускал с правами рута с консоли.
>Правильно ли, что я назначил права на запись в файл апачу?
Формулирую вопрос: От кого надо запускать Web, чтобы PHP мог создавать/редактировать файлы, которые находятся на Вебе?
создай для Apache пользователя, скажем, www, и запускай его от этого пользователя. затем поставь соотв. права на папки и файлы, кот. Apache будет читать и в которые будет что-то писать. если Apache будет запускаться от www, то и PHP - скрипты будут запускаться от имени www.
>>Из под кого работает апач? Есть ли права на запись в этот
>>файл?
>Стоит ASPLinux 9.0
>Апатч я запускал с правами рута с консоли.
>Правильно ли, что я назначил права на запись в файл апачу?
А как ты его из-под рута запустил? Насколько я помню, он под рутом не заводится....
>>>Из под кого работает апач? Есть ли права на запись в этот
>>>файл?
>>Стоит ASPLinux 9.0
>>Апатч я запускал с правами рута с консоли.
>>Правильно ли, что я назначил права на запись в файл апачу?
>А как ты его из-под рута запустил? Насколько я помню, он под
>рутом не заводится....
Заводится.Делаю такую команду:
su -c apache --command=httpd
и получаю по ps ux следущее
root 4439 3.5 2.2 14440 5720 ? S 13:44 0:00 httpd
Значит ли это, что httpd запустился root`a?
Правильно ли я набрал стоку запуска?
Еще раз, здравствуйте!
Ну где же конкретно можно почитать, какие права и кому нужно ставить?
Книжки по PHP, которые я читал, расказывают обо всем, но только не об этом. Аpache по этому поводу тоже мало что может сказать, во всяком случае я не нашел.
Спасибо всем, кто откликнетя.
>Еще раз, здравствуйте!
>Ну где же конкретно можно почитать, какие права и кому нужно ставить?
>
>Книжки по PHP, которые я читал, расказывают обо всем, но только не
>об этом. Аpache по этому поводу тоже мало что может сказать,
>во всяком случае я не нашел.
>Спасибо всем, кто откликнетя.В апачевском конфиге устанавливается пользователь и группа
-----
User apache
Group apache
------
из под которых все и работает, соответственно файл
должен иметь право на запись для этого аккаунта