다음 디렉토리 구조를 가진 전체 웹사이트가 있습니다.
/example.com
/html (public)
/css
/js
index.php
/lib
session.php
other_lib_files.php
/views
index.php
/models
/controllers
그림에서 볼 수 있듯이 html은 공개이며 그 위의 모든 항목은 비공개입니다.
내 사이트는 이제 서버를 업그레이드해야 하며 새 서버(Plesk가 포함된 Linux)는 다음과 같은 구조를 갖습니다(아래에서 문제가 되는 부분으로 축소됨).
/myplesksite.com
/httpdocs
/css
/js
index.php
/private
/lib
/models
/views
내가 생각하는 것은 이전 서버에서 했던 것과 같은 방식으로 /lib, /views, /models 등을 /httpdocs 바로 위의 디렉토리에 넣을 수 있어야 한다는 것입니다.
그게 가능합니까? 아니면 비공개로 넣어야 하나요?
필요하지 않은 경우 사이트 전체에서 내부 경로를 조정할 필요가 없다면 정말 좋겠습니다...
답변1
Plesk는 php open_basedir을 사용하여 httpdocs 폴더 외부의 다른 파일과 php의 /temp에 대한 액세스를 방지하기 때문입니다.
php_admin_value open_basedir "/var/www/vhosts/domain.com/httpdocs:/tmp"
루트 액세스 권한이 있으면 conf 파일을 쉽게 변경할 수 있습니다. 루트 액세스 권한이 없으면 호스팅 제공업체에 루트 액세스 권한이 있는지 문의하세요.
답변2
제안된 구조는 괜찮을 것입니다.