CI 安装时目录的安全处理

如果你想通过隐藏 CodeIgniter 的文件位置来增加安全性,你可以将 system 和 application 目录修改为其他的名字,然后打开主目录下的 index.php 文件将 $system_path 和 $application_folder 两个变量设置为你修改的名字。

为了达到更好的安全性,system 和 application 目录都应该放置在 Web 根目录之外,这样它们就不能通过浏览器直接访问。CodeIgniter 默认在每个目录下都包含了一个 .htaccess 文件,用于阻止直接访问,但是最好还是将它们移出能公开访问的地方,防止出现 Web 服务器配置更改或者 .htaccess 文件不被支持这些情况。

如果你想让 views 目录保持公开,也可以将你的 views 目录移出 application 目录。

移动完目录之后,打开 index.php 文件,分别设置好 $system_path、$application_folder 和 $view_folder 三个变量的值,最好设置成绝对路径,例如:“/www/MyUser/system”。

网站根目录:/home/apache/www/lxpursue/

index.php 所在目录:/home/apache/www/lxpursue/

$system_path = ‘/home/apache/www/CodeIgniter/system‘;
$application_folder = ‘/home/apache/www/CodeIgniter/application‘;
$view_folder = ‘/home/apache/www/lxpursue/views‘;

此时,视图文件的路径/静态页面模板就不应该用APPPATH来定位。而应该使用 VIEWPATH。  这些路径在index.php入口文件中都有定义了!

define(‘SELF‘, pathinfo(__FILE__, PATHINFO_BASENAME));

// Path to the system directory
    define(‘BASEPATH‘,  .........

define(‘APPPATH‘, .........

// The path to the "views" directory
define(‘VIEWPATH‘, ..........

时间: 2024-09-29 17:24:40

CI 安装时目录的安全处理的相关文章

apk安装时把程序附带文件拷贝到手机指定目录下

项目已搞定,今天把.apk文件弄到另外一台非调试手机上用,发现一个问题.因为要画图,所以绘图的点的数据保存在一个.txt的文本文件中,上次直接把它用usb传到指定文件夹下的,但是明显不科学,因为用户下载了你的.apk文件,你却告诉他,还要把这个文本文件拷贝到指定的文件夹下,所以,我就要解决这个问题,就是把文本文件打包在apk文件中,安装.apk时就让创建一个程序文件夹,然后把文本文件拷贝到这个目录文件夹里,用户运行程序,就可以绘图,不用再让他拷贝一份绘图的点的坐标的数据.同理,其实我这里还有设计

RAC安装时需要执行4个脚本及意义

RAC安装时需要执行4个脚本 1) $ORACLE_BASE/oraInventory/orainstRoot.sh (clusterware 结束时执行) 2) $CRS_HOME/root.sh (clusterware 结束时执行) 3) $CRS_HOME/bin/vipca.sh(该脚本是在第二个节点执行$CRS_HOME/root.sh时被自动调用) 4) $ORACLE_HOME/root.sh (安装完数据库以后执行) 1. orainstRoot.sh 脚本 1.1 orain

Zabbix安装时出现缺少PHP模块,解决过程

我在安装时PHP缺少gettext模块和bcmath模块:一下为解决步骤: 1.进入到PHP源码包目录下的ext目录: #cd  /soft/php-5.3.13/ext 2.会看到ext目录下有gettext目录和bcmath目录: 3.进入gettext目录,通过PHP进行编译: #cd gettext #/usr/local/services/php-5.3.13/bin/phpize #./configure --with-php-cofig=/usr/local/services/ph

myeclipse安装时遇到的奇葩问题

自己在安装了myeclipse8.5时,由于自己在安装时候完全没有将其卸载掉,再安装其他版本的时候默认生成一个安装8.5版本的路径文件夹.解决办法:C:\Users\Administrator\AppData\Local\Genuitec  这个默认目录下的内容清理掉. 困扰了我半天时间,删了注册表里面的东西,还是没有解决.希望日后有相同困境的朋友,有帮助 myeclipse安装时遇到的奇葩问题,布布扣,bubuko.com

.net安装部署“Error 1001 在初始化安装时发生异常” 的解决方法

状况描述:打包安装后,如果删除安装目录中的某个文件,这时从桌面快捷方式启动软件系统会自动运行修复程序,此时因为路径问题会报出"错误 1001 在初始化安装时发生异常xxx"的异常.(前提是你的安装部署中加入了"自定义操作",并为其传值). 查找原因原来是"自定义操作"中CustomActionData值有误造成.未出错前的CustomActionData. /DbName=[DBNAME] /ServerName=[SERVERNAME] /Us

PYTHON包安装时发生Unable to find vcvarsall.bat的解决办法

今天遇到了这个方面的问题,目前找到两种办法.一种是换编译器如mingw,另一种是装vc.第一种方法没成功,现在正在等第二种. 第一种: 首先安装MinGW: 把MinGW的路径添加到环境变量path中,比如MinGW安装在D:\MinGW\中,就把D:\MinGW\bin添加到path中: 打开命令行窗口,在命令行窗口中进入到要安装代码的目录下: 输入如下命令就可以安装了.setup.py install build --compiler=mingw32 第二种: 今天在安装pyscopg2库的

Android SDK安装时出错“android Failed to rename directory”的解决方法

Android SDK安装时出错"android Failed to rename directory"的解决的方法 安装Android SDK时遇到Failed to rename directory E:\Java\Android SDK\android-sdk_r06-windows\android-sdk-windows\tools to E:\Java\Android SDK\android-sdk_r06-windows\android-sdk-windows\temp\T

python3.5.0+ipython-5.0.0安装时遇到的问题

环境:Centos6.5,新安装的系统 1.第一次安装时,未安装任何依赖包,安装到最后有一个告警:Ignoring ensurepip failure: pip 7.1.2 requires SSL/TLS,未在意 2.安装ipython,安装完成后进入ipython提示缺少traitlets 3.安装pip模块,安装过程中提示需要setuptools 模块 4.安装setuptools安装包,提示依赖zlib,安装zlib-devel,安装后还是不行. 5.注意到安装python最后提示pip

【转】qtp安装时问题

1.安装qtp后要重启机器. 2.插件选择错误, 处理方式:重新启动QTP,勾选 WEB插件; 3.在安装QTP后,或者禁用IE浏览器里的一些ActiveX控件后,正常录制QTP时,对象识别不了;(保证IE浏览器的插件没有禁用) (Internet选项-安全-自定义级别里面) 处理方式: A.打开IE,在菜单中选择[工具]/[Internet选项]进入Internet配置界面.选择工具-管理加载项,查看目前加载的ActiveX的情况 .当看到存在BHOManager Class并且其状态是“禁用