- 时间:2019-01-31 02:15 编辑:2KB 来源:2KB.COM 阅读:307
- 扫一扫,手机访问
- 分享
-
扫描二维码,分享到微信
打开微信
使用"扫一扫"
再点击微信界面右上角三个点标志
分享到微信朋友和朋友圈。
摘要:
在PHP中经常看到如下代码
if (!defined('IN_ECS'))
{
die('Hacking attempt');
}
实现的原因以及原理如下:
ecshop里的有些.php页
在PHP中经常看到如下代码 if (!defined('IN_ECS')) { die('Hacking attempt'); } 实现的原因以及原理如下: ecshop里的有些.php页是不需要用户通过url直接访问的,用来被其它页调用的,例如/includes/init.php,就不需要直接访问,通过url访问你的网址/includes/init.php是无意义的,所以我们在可以直接方问的php里加上define('IN_ECS', true); 例如在index.php中有如下代码,一开头就设置IN_ECS的值为true然后才去加载init.php这样init.php文件中IN_ECS的值就为true,这时候引入cls_mysql.php也可以引入,因为此时IN_ECS的值也是为true define('IN_ECS', true); require(dirname(__FILE__) . '/includes/init.php'); 在页面直接访问 出现这样的结果 在不能直接访问的php里加上 if (!defined('IN_ECS')) { die('Hacking attempt'); } 这样当直接访问init.php里就会显不 Hacking attempt 从页起到禁止访问的目的,而其它页面在调用init.php时是正常的 这样做更安全 这也是一种设计思想,防止其它文件不正常调用或者防止前台直接访问文件。

2KB项目(www.2kb.com,源码交易平台),提供担保交易、源码交易、虚拟商品、在家创业、在线创业、任务交易、网站设计、软件设计、网络兼职、站长交易、域名交易、链接买卖、网站交易、广告买卖、站长培训、建站美工等服务