Cakephp, 앱 폴더가 웹루트에 없는 이유는 무엇입니까?

Cakephp, 앱 폴더가 웹루트에 없는 이유는 무엇입니까?

웹루트 외부에 CakePHP 파일을 저장하는 이유는 무엇입니까?

예를 들어, 이것이 제가 항상 하라고 들었던 방식입니다.

/home/username
  /app
  /cake
  /public_html
      index.php

보안 때문인 것은 알지만 왜 그럴까요? 어쨌든 사용자가 /app/ 폴더의 파일을 볼 수 있는 것과는 다릅니다. htaccess가 이를 방지하는 것이 맞나요?

사용자가 내 웹서버에서 악성 스크립트를 얻을 수 있다면 /app/ 폴더가 /public_html/에 있든 웹루트 외부에 있든 상관없이 /app/ 폴더 아래의 파일을 계속 변경할 것입니다. ?

그럼 왜 귀찮게?

답변1

왜 위험을 감수합니까? 웹 루트에 없으면 실수로 Apache에서 제공할 수 없습니다. 물론 차이가 없어야 하지만 이는 반대입니다.최소 권한의 주체.

또한 일반적으로 공용 폴더를 URL의 루트로 갖고 싶을 것입니다. 사람들을 www.example.com/home/username/public_html로 보내는 것은 약간 어색해 보입니까?

관련 정보