自认为,做一个最简单的php mvc框架,用url路由函数匹配url中的controller和method的名字,如果method_exists则new该controller再用call_user_func_array执行该method,否则引入error的controller,每个controller中可以require引入model,再require引入tpl,这是我做一个最简单的php框架的思路,那这里面需要注意哪些安全问题呢?
自认为,做一个最简单的php mvc框架,用url路由函数匹配url中的controller和method的名字,如果method_exists则new该controller再用call_user_func_array执行该method,否则引入error的controller,每个controller中可以require引入model,再require引入tpl,这是我做一个最简单的php框架的思路,那这里面需要注意哪些安全问题呢?
路径问题,不能通过url调用应用外部文件比如/etc/passwd
数据过滤,永远不要信任用户的任何输入。输入的所有数据使用htmlspecialchars过滤后入库。
数据库,使用PDO代替mysql_xxxx,使用参数绑定处理外部数据(如果数据库只使用mysql也可使用mysqli扩展)
立即学习“PHP免费学习笔记(深入)”;
关于 call_user_func_array 的安全问题,之前drupal中过招。
http://blog.knownsec.com/2014/10/drupal__callback_nightmare/
require 可能产生文件包含漏洞。
http://www.neatstudio.com/show-1123-1.shtml
PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号