php面试题三

 

 

php面试题三

一、总结

1、高效实用mysql的方法

2、如何防止sql注入

3、如何防止盗链

4、一个安全的用户登录系统需要注意哪些方面

 

二、php面试题三

11.如何设计或配置 Mysql,才能达到高效使用的目的。
1)设置字段的索引
2)explain select * from t1 where name="user2";
3)desc select * from t1 where name="user2";
4)慢查询日志
4)show status like 'com_%";

 

12.如何进行防 SQL 注入
//表单尽量用 post 提交,核心用户验证都走 post,避开 get
1.表单尽量用 post,表单判断控制走 get,因为 get 比 post 速度快
2.$_SERVER[HTTP_REFERER]判断提交者的源头
3.开启 addslashes,在’,“,\头加\
4.密码一定设置 md5 加密
5.服务器本身的安全(web+mysql)

 

12.1 防止盗链
1.服务器上防止
Apache 和 nginx 做 rewrite 基于源来做判断阻止盗链
2.代码防止
$_SERVER[HTTP_REFERER]

 

 

 

 

 

 

 8.mysql优化
1)服务器优化
    1)服务器负载均衡
2)数据库优化
    1)myisam表引擎
3)表优化
    1)分表
    2)字段索引
4)sql语句优化
    1)写sql语句时,where后面的字段尽量使用加索引的字段,而且要小心有的sql语句会让索引失效.

9.安全登录系统
1)验证码
2)限制登录时间
3)动态口令
4)短信验证

10.防sql注入
1)mysql服务器用户权限问题
2)用addslashes函数把表单数据进行转义处理
3)用htmlspecialchars函数把表单数据进行实体化
4)使用mysql预处理机制发送执行sql语句
5)及时给mysql软件更新补丁

11.防盗链
$_SERVER['HTTP_REFERER'];
#获取上一个页面的来源url,通过url中的域名或ip可以判断是否是来自本机的某一个脚本

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值