次のようなディレクトリ構造を持つ Web サイト全体があります。
/example.com
/html (public)
/css
/js
index.php
/lib
session.php
other_lib_files.php
/views
index.php
/models
/controllers
図に示すように、HTML はパブリックであり、それより上の部分はプライベートです。
私のサイトでは現在、サーバーをアップグレードする必要があり、新しいサーバー (Linux w/ Plesk) の構造は次のようになっています (問題のある部分は以下に削減されています)。
/myplesksite.com
/httpdocs
/css
/js
index.php
/private
/lib
/models
/views
私が考えるに、以前のサーバーと同じように、/lib、/views、/models などを /httpdocs のすぐ上のディレクトリに配置できるはずです。
それは可能ですか?それとも非公開にする必要がありますか?
必要がない限り、サイト全体の内部パスを調整する必要がないようにしたいのですが...
答え1
Pleskはphp open_basedirを使用して、phpからhttpdocsフォルダと/temp以外のファイルへのアクセスを防止します。
php_admin_value open_basedir "/var/www/vhosts/domain.com/httpdocs:/tmp"
ルートアクセス権を持っている場合は、conf ファイルを変更するのは簡単です。ルートアクセス権を持っていない場合は、ホスティング プロバイダーにそれが可能かどうか問い合わせてください。
答え2
提案された構造は問題ないはずです。