Ubuntu에서 그룹 쓰기 권한이 무시되는 이유는 무엇입니까?

Ubuntu에서 그룹 쓰기 권한이 무시되는 이유는 무엇입니까?

내 사용자가 로컬 Apache 루트 폴더에 대한 전체 액세스 권한을 갖고, 또한 Apache 사용자가 동일한 폴더에 대한 전체 액세스 권한을 갖기를 원합니다.

내가 한 일은 DevGroup이라는 새 그룹을 만들고 www-data거기에 내 사용자를 추가하는 것이었습니다. 또한 전체 그룹 액세스를 허용하기 위해 권한을 770으로 변경했습니다.

하지만 이제 나나 Apache 사용자는 폴더에 어떤 종류의 액세스도 허용하지 않습니다.

내가 얻는 것은 다음과 같습니다 ls.

drwxrwx--- 12 root      DevGroup    4096 Sep 27 17:34 testFolder

완벽해 보이지만 사용자로 파일에 액세스하려고 하면 다음과 같은 결과가 나타납니다.

var/www$ ls testFolder/
ls: cannot open directory testFolder/: Permission denied

또한 브라우저에서 폴더의 페이지에 액세스하려고 하면 다음과 같습니다.

[Thu Sep 27 17:47:16 2012] [error] [client 127.0.0.1] PHP Fatal error: 
 Unknown: Failed opening required '/var/www/testFolder/foo.php' 
(include_path='.:/usr/share/php:/usr/share/pear') in Unknown on line 0

무엇이 문제이며 어떻게 해결할 수 있나요?

답변1

설명하는 내용은 효과가 있지만 새 그룹 멤버십을 선택하려면 로그아웃하고 아파치를 다시 시작해야 할 수도 있습니다.

이 폴더가 웹 루트 아래에 있는 경우 이를 웹 서버의 "속성"으로 간주하는 것이 합리적입니다. 따라서 이 폴더를 사용자 www-data 및 그룹 DevGroup이 소유하도록 남겨두면 웹 서버가 항상 해당 폴더에 액세스할 수 있습니다. .

관련 정보