Я запускаю apache с mod_python, и у меня проблемы с чтением файлов из определенного каталога. Раньше каталог имел права доступа 0777, но я решил изменить его на 0770 (не очень доволен наличием другого доступа к RW).
Поэтому я изменил права доступа к каталогу и изменил его группу на «apache», поскольку другой пользователь записывает в него информацию (которая также является членом группы «apache»). Я также включил бит Set-group-ID, поскольку основная группа пользователя, который пишет, не является "apache".
Когда я смотрю на файлы, я вижу, что все они имеют правильные разрешения и группу, но когда я пытаюсь загрузить страницу из каталога, я получаю:
567 dirlist = os.listdir(logroot)
568 dirlist.sort(key=int,reverse=True)
569 for entry in dirlist[0:days]:
dirlist undefined, global os = , os.listdir = , logroot = '/path-to-dir/fix-dir-permissions/Logs/'
type 'exceptions.OSError': [Errno 13] Permission denied:'/path-to-dir/fix-dir-permissions/Logs/'
В Logs
каталог имеет следующие разрешения:
drwxrws--- 4 john apache 4096 Dec 27 15:59 Logs
Что я делаю не так?
Проверьте разрешения для всех каталогов над каталогом Logs /, а также проверьте статус SELinux. Это две наиболее распространенные проблемы, которые я видел в подобных ситуациях.