phpGrace 框架部署安全
优质
小牛编辑
134浏览
2023-12-01
phpGrace 框架部署到非项目目录
将 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_PATH')){define('PG_PATH' , './app');} //项目核心文件夹 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目录内,由于利用命名空间进行类文件的自动加载所以不能改写目录名称。