내가 알기 전에는 개별 사용자의 PHP 스크립트가 공유 스크립트에 액세스할 수 있는 위치로 /home/someuser/public_html/scripts를 사용하고 있었습니다.
include('/home/someuser/public_html/scripts/somefile.php');
한 서버에서 다른 서버로 이동하면서 상황이 바뀌었고 이제 작동하는 유일한 것은 public_html을 0755로 설정하는 것뿐입니다. 현재 일부 고객이 자신의 계정에 액세스할 수 있으므로 이는 용납될 수 없습니다. 사용자를 someuser와 동일한 그룹에 추가하고 /home/someuser/test_folder에 다른 폴더를 넣고 0750으로 설정하여 해결 방법을 테스트했습니다. 이제 그룹을 공유하는 사용자가 test_folder에 액세스할 수 있습니다. 그룹에 속하지 않은 사용자는 할 수 없지만 public_html을 755에서 750으로 변경하면 같은 그룹에 있는 사용자에게도 권한 오류가 발생합니다. lsattr을 확인했는데 public_html의 유일한 속성 세트는 "I"입니다.
다음에 무엇을 시도할지에 대한 아이디어가 있나요?
답변1
해결책은# setfacl -m g:someuser:rx /home/someuser/public_html
"파일 액세스 제어 목록 설정, 수정, 그룹: someuser: 읽기, 실행, /home/someuser/public_html"과 같이 읽어보세요.
이것포럼 질문이것은 나에게 올바른 방향을 알려주었습니다.