计算机类专业教育 > 网络与信息安全类

Web 应用开发技术

书号:9787113259792 套系名称:十三五高等学校数字媒体类专业规划教材

作者:景东 出版日期:2019-07-01

定价:33.00 页码 / 开本:184 /16

策划编辑:王占清 责任编辑:王占清 卢 笛

适用专业:无 适用层次:无

最新印刷时间:

资源下载
教学课件(暂无) 教学素材(暂无)
习题答案(暂无) 教学案例(暂无)
教学设计(暂无) 教学视频(暂无)
内容简介 前言 目录 作者介绍 图书特色
  • Web 应用开发技术是网站、App 等互联网产品开发中不可或缺的后端组成部分。
    本书基于以高性能著称的PHP Phalcon 框架,介绍后端开发涉及的关键技术。全书共分12 章:
    第1 章介绍开发部署并预览后端项目结构;第2 章介绍后端开发所需的网络原理基础知识;第3
    章介绍Phalcon 框架依赖注入和事件驱动设计思想;第4~9 章为后端开发核心,包含应用入口、
    路由原理、MVC 以及权限控制;第10~12 章介绍安全、缓存和多人合作等优化技术。每章配有
    习题,以便有兴趣的读者拓展思考。
    本书适合作为高等院校数字媒体技术、软件、计算机相关专业的本科生进阶教材,也适合作
    为感兴趣的开发人员的实践参考用书。
  • 第1 章 Phalcon 框架起步··············································································································1
    1.1 框架之谈····························································································································1
    1.1.1 是否需要框架··········································································································1
    1.1.2 为什么选择Phalcon·································································································2
    1.2 快速起步····························································································································3
    1.2.1 Phalcon 开发环境的配置·························································································3
    1.2.2 第一个Phalcon 项目································································································6
    1.3 Phalcon 开发工具············································································································· 14
    1.4 PhpStorm 配置·················································································································· 16
    小结·········································································································································· 16
    习题·········································································································································· 16
    第2 章 网络通信与HTTP 协议·································································································· 17
    2.1 计算机网络体系·············································································································· 17
    2.1.1 OSI 参考模型········································································································· 18
    2.1.2 TCP/IP 模型··········································································································· 19
    2.1.3 TCP/IP 模型的封装与解封····················································································· 21
    2.2 TCP 协议·························································································································· 23
    2.2.1 TCP 段格式············································································································ 23
    2.2.2 TCP Socket ············································································································· 25
    2.2.3 TCP 传输················································································································ 26
    2.3 HTTP 协议······················································································································· 28
    2.3.1 HTTP 请求报文····································································································· 28
    2.3.2 HTTP 响应报文····································································································· 30
    2.4 Cookie 与Session·············································································································· 31
    2.5 HTTPS ······························································································································ 32
    2.5.1 HTTPS 的相关概念································································································ 33
    2.5.2 TLS 协议的原理····································································································· 34
    小结·········································································································································· 36
    习题·········································································································································· 36
    Web 应用开发技术
    II
    第3 章 理解Phalcon 的设计思想······························································································ 37
    3.1 Phalcon 框架结构············································································································· 37
    3.2 依赖注入·························································································································· 38
    3.2.1 依赖注入的原理和简易
    实现······················································································································· 38
    3.2.2 Phalcon 中的DI ····································································································· 42
    3.3 事件驱动·························································································································· 45
    3.3.1 何为事件驱动架构································································································ 45
    3.3.2 事件驱动架构的实现原理······················································································ 46
    3.3.3 Phalcon 事件驱动机制
    的应用··················································································································· 47
    3.3.4 自定义可触发事件的组件······················································································ 50
    小结·········································································································································· 52
    习题·········································································································································· 53
    第4 章 应用································································································································· 54
    4.1 引导程序Bootstrap··········································································································· 54
    4.2 Application 工作流··········································································································· 58
    小结·········································································································································· 60
    习题·········································································································································· 60
    第5 章 路由与URL····················································································································· 61
    5.1 路由工作原理·················································································································· 61
    5.2 定义路由·························································································································· 63
    5.3 URL·································································································································· 67
    小结·········································································································································· 68
    习题·········································································································································· 68
    第6 章 调度器与控制器·············································································································· 69
    6.1 循环调度·························································································································· 69
    6.2 控制器基本用法·············································································································· 69
    6.3 调度器插件······················································································································ 73
    小结·········································································································································· 75
    习题·········································································································································· 75
    第7 章 视图································································································································· 77
    7.1 注册视图服务·················································································································· 77
    7.2 视图渲染级别·················································································································· 78
    7.3 视图路径·························································································································· 79
    目录
    III
    7.4 控制器向视图传值··········································································································· 80
    7.5 视图中获取服务·············································································································· 81
    7.6 视图工作原理·················································································································· 81
    7.7 Volt 引擎·························································································································· 83
    小结·········································································································································· 88
    习题·········································································································································· 89
    第8 章 模型································································································································· 90
    8.1 数据表与Model 类··········································································································· 90
    8.2 Model 数据查询················································································································ 91
    8.2.1 Model 基本数据查询······························································································ 91
    8.2.2 Model 查询参数····································································································· 92
    8.2.3 Model 面向对象查询······························································································ 94
    8.3 Model 数据创建和更新···································································································· 95
    8.4 Model 数据删除················································································································ 97
    8.5 原生SQL 和PHQL··········································································································· 97
    8.5.1 使用原生SQL ········································································································ 97
    8.5.2 使用PHQL············································································································· 98
    8.6 Model 事务机制················································································································ 99
    8.6.1 自定义事务·········································································································· 100
    8.6.2 模型的事务·········································································································· 100
    8.7 Model 关系····················································································································· 103
    8.7.1 三大关联关系······································································································ 103
    8.7.2 关联模型数据查询······························································································ 108
    8.7.3 关联模型数据创建和更新··················································································· 109
    8.7.4 关联模型数据删除······························································································ 109
    8.8 Model 事件和事件管理器······························································································ 110
    8.8.1 Model 事件··········································································································· 110
    8.8.2 使用自定义的事件管理器··················································································· 111
    8.9 Model 连接多个数据库·································································································· 112
    8.10 分析SQL 语句的执行时间·························································································· 113
    8.11 Model 获取DI 容器内的服务······················································································· 114
    小结········································································································································ 114
    习题········································································································································ 115
    第9 章 访问控制列表················································································································ 116
    9.1 ACL 实现原理················································································································ 116
    9.2 Phalcon\ACL 的基本方法······························································································· 117
    Web 应用开发技术
    IV
    9.3 静态ACL 的实现··········································································································· 119
    9.4 动态ACL 的实现··········································································································· 123
    小结········································································································································ 124
    习题········································································································································ 125
    第10 章 网站安全····················································································································· 126
    10.1 使用HTTPS·················································································································· 126
    10.2 跨站请求伪造·············································································································· 128
    10.2.1 攻击原理············································································································ 128
    10.2.2 防御··················································································································· 129
    10.3 XSS 攻击······················································································································ 129
    10.3.1 XSS 攻击原理···································································································· 130
    10.3.2 防御··················································································································· 130
    10.4 SQL 注入······················································································································ 131
    10.4.1 SQL 注入原理···································································································· 131
    10.4.2 防御··················································································································· 132
    10.5 拒绝服务攻击·············································································································· 133
    10.6 服务器文件权限管理··································································································· 134
    10.6.1 文件权限管理的目的和原理············································································· 134
    10.6.2 Linux 文件权限操作方法··················································································· 135
    10.7 资源ID 保护················································································································ 136
    10.8 文件上传安全·············································································································· 136
    10.8.1 文件上传漏洞···································································································· 136
    10.8.2 防御··················································································································· 137
    小结········································································································································ 137
    习题········································································································································ 138
    第11 章 缓存····························································································································· 139
    11.1 缓存的场景分析·········································································································· 139
    11.2 Phalcon 缓存················································································································· 139
    11.2.1 Phalcon 缓存简介······························································································· 139
    11.2.2 Phalcon 缓存的使用··························································································· 141
    11.2.3 Phalcon 缓存操作······························································································· 143
    11.3 模型层缓存·················································································································· 145
    11.4 控制层缓存·················································································································· 146
    11.5 视图层缓存·················································································································· 148
    11.5.1 视图层缓存········································································································ 148
    11.5.2 全站静态············································································································ 149
    目录
    V
    11.6 缓存清除······················································································································ 149
    小结········································································································································ 151
    习题········································································································································ 151
    第12 章 多人合作的开发架构·································································································· 152
    12.1 多模块的开发模式······································································································· 152
    12.1.1 如何分割模块···································································································· 152
    12.1.2 Phalcon 多模块项目··························································································· 153
    12.1.3 Phalcon 模块之间调用······················································································· 156
    12.1.4 多模块的ACL 实现··························································································· 157
    12.2 多站点跨语言的开发模式··························································································· 158
    12.3 基于Git 的代码管理···································································································· 161
    12.3.1 Git 的常用操作·································································································· 161
    12.3.2 分支的创建与管理···························································································· 164
    12.3.3 GitHub 的使用··································································································· 165
    12.4 核心代码保护·············································································································· 168
    小结········································································································································ 169
    习题···································································································································170
  • 景东 ,哈尔滨工业大学

  • 内容全面,实例丰富,简明易懂,突出实用性。