在 VPS 上使用 SuPHP
我正在執行一個帶有 WordPress CMS 的網站。我嘗試安裝 W3 Total Cache 來加速站點文件,但我不知道選擇哪個操作碼(我在 VPS 上),所以我向我的主機送出了一張支持票。樓主回來跟我說:
APC 在您的 VPS 上不可用。您的 VPS 正在使用 SuPHP 執行 PHP,因此 APC 將無法使用它。
> ==================================================== > -bash-3.1# hostname server.xxxxx.com > -bash-3.1# /usr/local/cpanel/bin/rebuild_phpconf --current Available handlers: suphp dso cgi none DEFAULT PHP: 5 PHP4 SAPI: none PHP5 SAPI: > suphp SUEXEC: enabled RUID2: not installed > bash-3.1# > ====================================================
suPHP 是必須的,因為它在伺服器上提供了額外的保護層。它會導致 php 腳本在帳戶使用者名下執行,而不是在使用者“nobody”下執行,後者是 apache/php 將在未執行 suPHP 的伺服器上執行的使用者。此功能使我們能夠更輕鬆地跟踪通過使用者執行的不安全 php 腳本進入的任何潛在安全漏洞。
如果您仍然想要 APC,那麼我們需要在您的 VPS 上重新編譯 PHP,而不使用 suphp。請注意,如果沒有 suphp,某些網站腳本可能無法與 PHP 一起使用。
我還在使用 vBulletin 處理的網站上執行了一個論壇。我需要 suPHP 嗎?記憶體速度的權衡值得刪除嗎?我不是系統管理員,但我讀到在共享伺服器上最推薦使用 suphp。
你是伺服器上唯一的使用者嗎?您是否為其他人/帳戶託管?人們可以上傳 php 腳本以在您的伺服器上執行嗎?
如果上述任何一個答案是肯定的,那麼建議使用 SuPHP,因為它通過強制它以使用者身份執行來提供額外的保護層,而不是 web 伺服器執行的使用者身份。如果您刪除 su php,所有需要讀取 php 的目錄和文件都需要由您的網路伺服器使用者(通常為 nobody 或 apache 或 httpd)擁有或可寫。這也導致人們做一些事情,比如設置世界可讀 | 在目錄上可寫(IE 模式 777),以便 Web 伺服器可以讀取/寫入它們。如果您是唯一在您的 VPS 上使用虛擬主機的個人/公司,那麼這不是什麼大問題。但是如果你有其他人可以訪問伺服器,他們可以使用 PHP 通過 web 瀏覽這些目錄並公開資訊等……所以你需要考慮到這一點。