或是,PHP的设计本身就避免直接查看文件内容的情况? 从安全角度考虑,这个系统级的文件应该做什么保护措施?
网友完善的答案
经调研,得出以下常用方法:
1 在程序中定义一个标识变量
define('IN_SYS', TRUE);
2 在config.php中获取这变量
if(!defined('IN_SYS')) {
exit('禁止访问');
}
例如dedecms中被调用的文件的开头都有这段代码
if(!defined('DEDEINC'))
{
exit("Request Error!");
}
然后在公共调用文件中例如 plus/book.php
<?php require_once(dirname(__FILE__)."/../include/config_base.php"); $conn=mysql_connect ($cfg_dbhost,$cfg_dbuser,$cfg_dbpwd); mysql_select_db($cfg_dbname);
调用config_base.php中如下代码
error_reporting(E_ALL || ~E_NOTICE);
define('DEDEINC',dirname(__FILE__));
//载入用户配置的系统变量
require_once(DEDEINC."/config_hand.php");