我有一個完整的網站,其目錄結構如下:
/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"
如果您具有 root 存取權限,則可以輕鬆變更conf 檔案。如果您沒有 root 存取權限,您可以詢問您的託管提供者是否可以這樣做。
答案2
你提出的結構應該沒問題。