部署安全
将框架部署到非项目目录
将 phpGrace 框架部署到非项目目录可以使得系统更安全,也可以实现多个项目公用一套框架的目的。步骤如下:
1、将 phpGrace 文件夹放到非项目目录,如 D:\phpGrace 2、改写入口文件,类似以下代码: <?php include 'D:\phpGrace\phpGrace.php';
改变 app 目录名称
将 app 核心目录名改写也可以防止攻击者的目录猜测,如:
<?php define('PG_PATH', 'myapp'); //改写app目录 include 'D:\phpGrace\phpGrace.php';
修改其他核心目录
修改控制器、视图、配置文件目录及文件名全面避免开源规则暴露文件夹命名的问题,下面的核心文件夹名称都可以通过入口文件提前定义的方式来改变:
// 控制器文件所在目录 if(!defined('PG_CONTROLLER')){define('PG_CONTROLLER' , 'controllers');} // 视图文件所在目录 if(!defined('PG_VIEW')){define('PG_VIEW' , 'views');} // 语言包文件所在目录 if(!defined('PG_LANG_PACKAGE')){define('PG_LANG_PACKAGE' , 'lang');} // 全局配置文件名称 if(!defined('PG_CONF')){define('PG_CONF' , 'config.php');}
如入口文件类似以下定义:
<?php define('PG_PATH', 'myapp'); define('PG_CONTROLLER', 'mycontrollers'); define('PG_VIEW', 'myviews'); include 'D:\phpGrace\phpGrace.php';
说明:
模型和工具类在phpGrace目录内,由于利用命名空间进行类文件的自动加载所以不能改写目录名称。