要優化 PHP 中的 phpinfo() 輸出,您可以采取以下措施:
移除敏感信息:不要在 phpinfo() 輸出中顯示敏感信息,如文件路徑、數據庫連接信息等。您可以通過創建一個包含所需信息的單獨配置文件,并在需要時引用它來實現這一點。
使用自定義函數:創建一個自定義函數來生成 phpinfo() 輸出,以便更好地控制輸出的內容和格式。例如,您可以創建一個名為 custom_phpinfo() 的函數,并在其中定義要顯示的信息以及它們的顯示方式。
function custom_phpinfo() {
ob_start();
phpinfo();
$content = ob_get_clean();
// 移除敏感信息
$content = str_replace(['Server', 'X-Powered-By'], ['Server: [Your Server]', 'X-Powered-By: [Your Application]'], $content);
return $content;
}
if (isset($_GET['info']) && $_GET['info'] == 'phpinfo') {
custom_phpinfo();
} else {
echo "Access denied.";
}
使用 HTTPS:確保您的網站使用 HTTPS,以保護敏感信息在傳輸過程中的安全。
關閉錯誤報告:在生產環境中,關閉錯誤報告以防止潛在的安全風險。您可以使用 error_reporting() 和 ini_set() 函數來實現這一點。
error_reporting(E_ALL & ~E_NOTICE & ~E_DEPRECATED & ~E_STRICT & ~E_USER_NOTICE & ~E_USER_DEPRECATED);
ini_set('display_errors', 0);
使用內容安全策略(CSP):實施內容安全策略以防止跨站腳本(XSS)和其他代碼注入攻擊。
定期更新 PHP 和依賴庫:確保您的 PHP 版本和依賴庫是最新的,以修復已知的安全漏洞。
通過采取這些措施,您可以優化 PHP 中的 phpinfo() 輸出,提高網站的安全性。