zoukankan      html  css  js  c++  java
  • 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可以判断是否是来自本机的某一个脚本

  • 相关阅读:
    ちょっとした難しい言葉まとめ②
    objective -c 知識点
    Viewing the Raw SQL Statement(xcode で)
    ちょっとした難しい言葉まとめ③
    ちょっとした難しい言葉まとめ④
    7.25 8figting!
    7.25 7figting!
    7.25 6figting!
    7.25 5
    7.25 4
  • 原文地址:https://www.cnblogs.com/Renyi-Fan/p/9056148.html
Copyright © 2011-2022 走看看