thinkphpcookie加密
后台登陆密码加密让敏验证设置:
相关函数核携:
控制器方坦氏枝法:
② thinkphp数据库配置信息加密怎么处理
今天有一个朋友问我thinkphp的这个问题,刚好网络搜索到你这个问题。已经解决。就帮你解答一下这个问题。
首先我尝试在入口文件封装一个加密函数,我用php des 加密,然后在配置文件config.php调用。然后在控制器里面使用,打印配置文件:mp(C());//输出所有的配置文件信息, 虽然能看到正确的数据用户名和密码,但是会报错。失败告终。
我说一下我的解决方法。很简单。
1:把配置文件里面的用户名,密码,数据库名瞎写一写,别人看到你的代码的配置文件看到的就是错误的数据库名和密码了。比如:
'DB_NAME' => 'SB', // 数据库名
'DB_USER' => 'ni_da_ye', // 用户名
'DB_PWD' => 'da_da_bi', // 密码
在每个控制器文件里面。加入一段代码。
比如你的IndexController.class.php文件。加下面的代码。
/* 初始化方法*/
public function __construct(){
parent::__construct();
C("DB_NAME",decrypt('712349721937491237'));//数据库名,
C('DB_USER',decrypt('712349721937491237'));//用户名
C('DB_PWD',decrypt('712349721937491237'));//密码
}
看清楚了吗?
decrypt()这个函数就是我封装的一个加密函数,亲自测试没有错误。可能会牺牲一些性能。但是保证了用户名,密码,数据库名没有泄露。甚至你都可以把数据库连接地址也加密一下。希望能帮到你。
PHP加密函数可以考虑用des,aes这些可逆加密。别用什么md4,md5.
③ thinkphp MD5加密问题
AUTH_CODE这个参数是自定义的,每个网站的参数都不一样,有些网站为了安全,这个值还是随机数,这样的话,就打打加强了开源程序的安全性。encrypt这个函数在这里就是读取配置文件中的随机数和MD5加密之后的文件再做个二次加密,所以就很安全咯
是否可以解决您的问题?
④ thinkphp3.2 常量配置在哪
惯例配置
应用设定
'APP_USE_NAMESPACE'=>true,//应用类库是否使用命名空间3.2.1新增
'APP_SUB_DOMAIN_DEPLOY'=>false,//是否开启子域名部署
'APP_SUB_DOMAIN_RULES'=>array(),//子域名部署规则
'APP_DOMAIN_SUFFIX'=>'',//域名后缀如果是com.cnnet.cn之类的后缀必须设置
'ACTION_SUFFIX'=>'',//操作方法后缀
'MULTI_MODULE'=>true,//是否允许多模块如果为false则必须设置DEFAULT_MODULE
'MODULE_DENY_LIST'=>array('Common','Runtime'),//禁止访问的模块列表
'MODULE_ALLOW_LIST'=>array(),//允许访问的模块列表
'CONTROLLER_LEVEL'=>1,
'APP_AUTOLOAD_LAYER'=>'Controller,Model',//自动加载的应用类库层(针对非命名空间定义类库)3.2.1新增
'APP_AUTOLOAD_PATH'=>'',//自动加载的路径(针对非命名空间定义类库)3.2.1新增
默认设定
'DEFAULT_M_LAYER'=>'Model',//默认的模型层名称
'DEFAULT_C_LAYER'=>'Controller',//默认的控制器层名称
'DEFAULT_V_LAYER'=>'View',//默认的视图层名称
'DEFAULT_LANG'=>'zh-cn',//默认语言
'DEFAULT_THEME'=>'',//默认模板主题名称
'DEFAULT_MODULE'=>'Home',//默认模块
'DEFAULT_CONTROLLER'=>'Index',//默认控制器名称
'DEFAULT_ACTION'=>'index',//默认操作名称
'DEFAULT_CHARSET'=>'utf-8',//默认输出编码
'DEFAULT_TIMEZONE'=>'PRC',//默认时区
'DEFAULT_AJAX_RETURN'=>'JSON',//默认AJAX数据返回格式,可选JSONXML...
'DEFAULT_JSONP_HANDLER'=>'jsonpReturn',//默认JSONP格式返回的处理方法
'DEFAULT_FILTER'=>'htmlspecialchars',//默认参数过滤方法用于I函数...
Cookie设置
'COOKIE_EXPIRE'=>0,//Cookie有效期
'COOKIE_DOMAIN'=>'',//Cookie有效域名
'COOKIE_PATH'=>'/',//Cookie路径
'COOKIE_PREFIX'=>'',//Cookie前缀避免冲突
'COOKIE_HTTPONLY'=>'',//Cookie的httponly属性3.2.2新增
数据库设置
'DB_TYPE'=>'',//数据库类型
'DB_HOST'=>'',//服务器地址
'DB_NAME'=>'',//数据库名
'DB_USER'=>'',//用户名
'DB_PWD'=>'',//密码
'DB_PORT'=>'',//端口
'DB_PREFIX'=>'',//数据库表前缀
'DB_FIELDTYPE_CHECK'=>false,//是否进行字段类型检查3.2.3版本废弃
'DB_FIELDS_CACHE'=>true,//启用字段缓存
'DB_CHARSET'=>'utf8',//数据库编码默认采用utf8
'DB_DEPLOY_TYPE'=>0,//数据库部署方式:0集中式(单一服务器),1分布式(主从服务器)
'DB_RW_SEPARATE'=>false,//数据库读写是否分离主从式有效
'DB_MASTER_NUM'=>1,//读写分离后主服务器数量
'DB_SLAVE_NO'=>'',//指定从服务器序号
'DB_SQL_BUILD_CACHE'=>false,//数据库查询的SQL创建缓存3.2.3版本废弃
'DB_SQL_BUILD_QUEUE'=>'file',//SQL缓存队列的缓存方式支持filexcache和apc3.2.3版本废弃
'DB_SQL_BUILD_LENGTH'=>20,//SQL缓存的队列长度3.2.3版本废弃
'DB_SQL_LOG'=>false,//SQL执行日志记录3.2.3版本废弃
'DB_BIND_PARAM'=>false,//数据库写入数据自动参数绑定
'DB_DEBUG'=>false,//数据库调试模式3.2.3新增
'DB_LITE'=>false,//数据库Lite模式3.2.3新增
数据缓存设置
'DATA_CACHE_TIME'=>0,//数据缓存有效期0表示永久缓存
'DATA_CACHE_COMPRESS'=>false,//数据缓存是否压缩缓存
'DATA_CACHE_CHECK'=>false,//数据缓存是否校验缓存
'DATA_CACHE_PREFIX'=>'',//缓存前缀
'DATA_CACHE_TYPE'=>'File',//数据缓存类型,支持:File|Db|Apc|Memcache|Shmop|Sqlite|Xcache|Apachenote|Eaccelerator
'DATA_CACHE_PATH'=>TEMP_PATH,//缓存路径设置(仅对File方式缓存有效)
'DATA_CACHE_SUBDIR'=>false,//使用子目录缓存(自动根据缓存标识的哈希创建子目录)
'DATA_PATH_LEVEL'=>1,//子目录缓存级别
错误设置
'ERROR_MESSAGE'=>'页面错误!请稍后再试~',//错误显示信息,非调试模式有效
'ERROR_PAGE'=>'',//错误定向页面
'SHOW_ERROR_MSG'=>false,//显示错误信息
'TRACE_MAX_RECORD'=>100,//每个级别的错误信息最大记录数
日志设置
'LOG_RECORD'=>false,//默认不记录日志
'LOG_TYPE'=>'File',//日志记录类型默认为文件方式
'LOG_LEVEL'=>'EMERG,ALERT,CRIT,ERR',//允许记录的日志级别
'LOG_EXCEPTION_RECORD'=>false,//是否记录异常信息日志
SESSION设置
'SESSION_AUTO_START'=>true,//是否自动开启Session
'SESSION_OPTIONS'=>array(),//session配置数组支持typenameidpathexpiredomain等参数
'SESSION_TYPE'=>'',//sessionhander类型默认无需设置除非扩展了sessionhander驱动
'SESSION_PREFIX'=>'',//session前缀
模板引擎设置
'TMPL_CONTENT_TYPE'=>'text/html',//默认模板输出类型
'TMPL_ACTION_ERROR'=>THINK_PATH.'Tpl/dispatch_jump.tpl',//默认错误跳转对应的模板文件
'TMPL_ACTION_SUCCESS'=>THINK_PATH.'Tpl/dispatch_jump.tpl',//默认成功跳转对应的模板文件
'TMPL_EXCEPTION_FILE'=>THINK_PATH.'Tpl/think_exception.tpl',//异常页面的模板文件
'TMPL_DETECT_THEME'=>false,//自动侦测模板主题
'TMPL_TEMPLATE_SUFFIX'=>'.html',//默认模板文件后缀
'TMPL_FILE_DEPR'=>'/',//模板文件CONTROLLER_NAME与ACTION_NAME之间的分割符
'TMPL_ENGINE_TYPE'=>'Think',//默认模板引擎以下设置仅对使用Think模板引擎有效
'TMPL_CACHFILE_SUFFIX'=>'.php',//默认模板缓存后缀
'TMPL_DENY_FUNC_LIST'=>'echo,exit',//模板引擎禁用函数
'TMPL_DENY_PHP'=>false,//默认模板引擎是否禁用PHP原生代码
'TMPL_L_DELIM'=>'{',//模板引擎普通标签开始标记
'TMPL_R_DELIM'=>'}',//模板引擎普通标签结束标记
'TMPL_VAR_IDENTIFY'=>'array',//模板变量识别。留空自动判断,参数为'obj'则表示对象
'TMPL_STRIP_SPACE'=>true,//是否去除模板文件里面的html空格与换行
'TMPL_CACHE_ON'=>true,//是否开启模板编译缓存,设为false则每次都会重新编译
'TMPL_CACHE_PREFIX'=>'',//模板缓存前缀标识,可以动态改变
'TMPL_CACHE_TIME'=>0,//模板缓存有效期0为永久,(以数字为值,单位:秒)
'TMPL_LAYOUT_ITEM'=>'{__CONTENT__}',//布局模板的内容替换标识
'LAYOUT_ON'=>false,//是否启用布局
'LAYOUT_NAME'=>'layout',//当前布局名称默认为layout
URL设置
'URL_CASE_INSENSITIVE'=>true,//默认false表示URL区分大小写true则表示不区分大小写
'URL_MODEL'=>1,//URL访问模式,可选参数0、1、2、3,代表以下四种模式:
//0(普通模式);1(PATHINFO模式);2(REWRITE模式);3(兼容模式)默认为PATHINFO模式
'URL_PATHINFO_DEPR'=>'/',//PATHINFO模式下,各参数之间的分割符号
'URL_PATHINFO_FETCH'=>'ORIG_PATH_INFO,REDIRECT_PATH_INFO,REDIRECT_URL',//用于兼容判断PATH_INFO参数的SERVER替代变量列表
'URL_REQUEST_URI'=>'REQUEST_URI',//获取当前页面地址的系统变量默认为REQUEST_URI
'URL_HTML_SUFFIX'=>'html',//URL伪静态后缀设置
'URL_DENY_SUFFIX'=>'ico|png|gif|jpg',//URL禁止访问的后缀设置
'URL_PARAMS_BIND'=>true,//URL变量绑定到Action方法参数
'URL_PARAMS_BIND_TYPE'=>0,//URL变量绑定的类型0按变量名绑定1按变量顺序绑定
'URL_404_REDIRECT'=>'',//404跳转页面部署模式有效
'URL_ROUTER_ON'=>false,//是否开启URL路由
'URL_ROUTE_RULES'=>array(),//默认路由规则针对模块
'URL_MAP_RULES'=>array(),//URL映射定义规则
系统变量名称设置
'VAR_MODULE'=>'m',//默认模块获取变量
'VAR_CONTROLLER'=>'c',//默认控制器获取变量
'VAR_ACTION'=>'a',//默认操作获取变量
'VAR_AJAX_SUBMIT'=>'ajax',//默认的AJAX提交变量
'VAR_JSONP_HANDLER'=>'callback',
'VAR_PATHINFO'=>'s',//兼容模式PATHINFO获取变量例如?s=/mole/action/id/1后面的参数取决于URL_PATHINFO_DEPR
'VAR_TEMPLATE'=>'t',//默认模板切换变量
'VAR_ADDON'=>'addon',//默认的插件控制器命名空间变量3.2.2新增
其他设置
'HTTP_CACHE_CONTROL'=>'private',//网页缓存控制
'CHECK_APP_DIR'=>true,//是否检查应用目录是否创建
'FILE_UPLOAD_TYPE'=>'Local',//文件上传方式
'DATA_CRYPT_TYPE'=>'Think',//数据加密方式