使用 require 引用文件時,報錯如下:
require 'https://dev.ryan.com/test.php';
[Sat Mar 19 23:10:50 2011] [warn] mod_fcgid: stderr:
PHP Fatal error: require_once() [function.require]: Failed opening required '/common/configs/config_templates.inc.php'
(include_path='.:/usr/share/pear:/usr/share/php') in /home/viapics1/public_html/common/configs/config.inc.php on line 158
原因是沒理解虛擬服務器路徑和文件系統路徑。
require 使用文件系統路徑,如
/home/viapics1/public_html/common/configs/config_templates.inc.php
解決方法:
先使用 $_SERVER['DOCUMENT_ROOT'] 獲取 web 服務器根目錄
修改后代碼如下:
require_once $_SERVER['DOCUMENT_ROOT'].'/common/configs/config_templates.inc.php';
參考:
https://stackoverflow.com/questions/5364233/php-fatal-error-failed-opening-required-file