Я не могу предоставить разрешения Apache для записи в файл, что я делаю не так?
Я пытаюсь предоставить разрешение apache для файла в моей домашней папке, чтобы страница php могла записывать данные журнала в этот файл. Ниже найдите то, что я сделал для достижения этой цели в моемbash
оболочка, и я не могу понять, почему это победилот работа:
[root@myserver logs]# mkdir apachelogs
[root@myserver logs]# touch apachelogs/log.log
[root@myserver logs]# chown -R apache:apache apachelogs
[root@myserver logs]# chown -R apache:apache apachelogs/log.log
[root@myserver logs]# chmod 770 apachelogs
[root@myserver logs]# su apache
bash-4.1$ cd apachelogs
bash: cd: apachelogs: Permission denied
Итак, я только что предоставил право владения apache, разрешение на чтение, запись, выполнение, но ясно, что apache по-прежнему не имеет доступа к каталогу, и это подтверждается, когда мой php-скрипт выполняет следующую строку кода:
echo exec(whoami)."\n";
file_put_contents("/home/chilinut/logs/apachelog/log.log","test",FILE_APPEND);
Выход (не удивительно)
apache
E_WARNING: file_put_contents(/home/chilinut/logs/apachelog/log.log):
failed to open stream: Permission denied
Что мне здесь не хватает? Я нене хочу давать папку 777. ЯЯ бы предпочел что-то вроде 644. Я используюCentOS release 6.4 (Final)
Спасибо за прочтение!