第1章Microsoft Azure网站架构 1
1.1什么是Microsoft Azure 1
1.1.1云计算简介 1
1.1.2 Microsoft Azure简介 5
1.1.3 Microsoft Azure网站简介 13
1.2 Microsoft Azure网站架构 14
1.3 Microsoft Azure网站模式 17
1.3.1宿主计划 17
1.3.2 Azure网站宿主计划模式详解 21
1.4如何选择Azure服务 23
1.5参考文献与扩展阅读 24
第2章 管理、配置和监视Azure网站 27
2.1 Microsoft Azure管理门户网站 27
2.1.1创建Azure网站 28
2.1.2创建网站的流程 29
2.2管理网站 33
2.3网站配置 35
2.4网站备份与恢复 38
2.4.1手动备份网站 38
2.4.2自动备份网站 39
2.4.3备份的管理 40
2.4.4从备份中恢复网站 41
2.5自定义域名 43
2.5.1 Azure网站DNS简介 43
2.5.2配置自有域名 44
2.5.3深入Azure网站自有域名配置 47
2.5.4 Azure网站DNS配置检查清单 48
2.5.5绑定自有域名后的DNS配置 49
2.5.6中国区Azure网站DNS配置 49
2.6配置SSL绑定 50
2.6.1 Azure网站SSL绑定模式 51
2.6.2配置安全证书 52
2.6.3深入IP SSL DNS配置 57
2.6.4同时使用IP SSL和SNI SSL 58
2.6.5强制客户使用HTTPS访问 62
2.6.6常见证书问题 63
2.7监视网站 64
2.7.1仪表盘 64
2.7.2监视器 65
2.8扩展网站 69
2.8.1如何选择扩展模式 69
2.8.2如何扩展Azure网站 70
2.9参考文献与扩展阅读 73
第3章 管理自动化 75
3.1 Azure环境 76
3.2管理模式 77
3.3 Azure服务管理API客户端认证 77
3.3.1使用Azure账户认证 78
3.3.2通过管理证书认证 78
3.3.3选择合适的认证方式 80
3.4使用PowerShell管理Azure网站 80
3.4.1安装与运行 80
3.4.2查看Azure环境配置 81
3.4.3认证并连接到Azure订阅 82
3.4.4管理网站 83
3.4.5资源管理模式 85
3.5使用跨平台命令行管理网站 92
3.5.1安装 92
3.5.2查看Azure环境 92
3.5.3连接到Azure订阅 93
3.5.4管理网站 94
3.6使用REST API管理网站 95
3.6.1 Azure网站管理员角色 95
3.6.2资源结构 96
3.6.3身份认证 97
3.6.4应用实例 97
3.7使用管理库管理网站 101
3.8参考文献与扩展阅读 103
第4章 Azure网站应用开发框架 105
4.1 Azure网站文件目录结构 105
4.1.1 Azure网站文件目录介绍 105
4.1.2通过FTP访问Azure网站文件系统 107
4.2在Visual Studio中集成Azure订阅 108
4.3 Azure网站上的ASPNET 111
4.3.1创建一个Web项目 112
4.3.2将网站部署到Azure网站 113
4.3.3 Azure网站中ASP.NET开发常见问题 115
4.3.4 Azure网站ASP.NET常见故障查找方法 120
4.3.5远程调试部署Azure网站中的ASPNET站点 125
4.4 Azure网站上的PHP开发 128
4.4.1 Azure网站中PHP架构 129
4.4.2配置Azure网站上的PHP 130
4.4.3配置PHP扩展模块 133
4.4.4 PHP网站排错 136
4.5 Azure网站上的Node.js 138
4.5.1 Azure网站上Node.js的架构 139
4.5.2 IISNode配置 140
4.5.3选择Node.js版本 140
4.5.4利用Visual Studio开发和部署Node.js应用 142
4.5.5利用Visual Studio调试Node.js应用 144
4.6 Azure网站应用设置 145
4.6.1使用应用设置 146
4.6.2数据库连接字符串 148
4.6.3运行时自动更新 150
4.7使用Visual Studio Online (Monaco)在线编辑代码 151
4.7.1打开在线编辑功能 151
4.7.2通过Monaco在线编辑代码 152
4.7.3集成源代码管理 154
4.7.4编辑源代码 156
4.7.5查看跟踪输出 157
4.7.6命令行控制台 158
4.8参考文献与扩展阅读 158
第5章 Azure网站部署 160
5.1部署凭据 160
5.1.1用户级部署凭据 160
5.1.2站点级部署凭据(发布配置文件凭据) 161
5.1.3如何选择部署凭据 164
5.2使用FTP部署网站 164
5.3 Web Deploy 165
5.3.1 Visual Studio中使用Web Deploy发布网站 166
5.3.2 Visual Studio部署MVC应用(后台使用数据库) 169
5.3.3 Web Deploy命令行 171
5.4 Git 172
5.4.1 Project Kudu 173
5.4.2使用Git发布Web应用到Microsoft Azure网站 173
5.4.3将现有网站克隆到本地Git存储库 176
5.5从Visual Studio Online部署 177
5.5.1将Visual Studio Online中的项目部署到Azure网站 177
5.5.2从Visual Studio中部署代码更新 180
5.5.3 Visual Studio Online集成Azure网站工作原理 181
5.6从GitHub中部署 181
5.6.1集成Azure网站与GitHub存储库 182
5.6.2将 GitHub中的项目部署到Azure网站 183
5.6.3 GitHub与Azure网站集成工作原理 184
5.7阶段部署 184
5.7.1阶段部署与网站配置 185
5.7.2使用阶段部署实现零停机部署 186
5.7.3使用PowerShell管理阶段部署 189
5.7.4使用X-CLI管理阶段部署 190
5.8在生产环境中进行测试 191
5.8.1创建网站 191
5.8.2部署测试代码 192
5.8.3配置在生产环境中测试功能 192
5.8.4测试 194
5.9参考文献与扩展阅读 195
第6章 迁移现有网站到Azure网站 197
6.1网站迁移流程 197
6.2典型应用迁移方案 199
6.2.1 BlogEngine.NET (ASP.NET网站) 200
6.2.2 nopCommerce (ASP.NET网站+SQL Server数据库) 202
6.2.3 WordPress (PHP网站+MySQL数据库) 206
6.3网站迁移工具 210
6.3.1安装Azure网站迁移工具 210
6.3.2兼容性分析 211
6.3.3迁移网站 212
6.4将Azure网站迁移到另一个数据中心 214
6.4.1备份当前网站 215
6.4.2创建新的网站 215
6.4.3将现有网站恢复到新建的网站 216
6.4.4验证新的网站 218
6.4.5修改DNS配置 218
6.5参考文献与扩展阅读 219
第7章 基于Azure网站构建高性能Web应用 221
7.1高性能Azure网站典型架构 221
7.2利用Microsoft Azure缓存服务(预览版)提高性能 223
7.2.1 Microsoft Azure缓存服务(预览版)简介 223
7.2.2 Azure缓存服务应用架构 225
7.3集成Microsoft Azure流量管理器提高性能与可靠性 234
7.3.1 Microsoft Azure流量管理器简介 234
7.3.2流量管理器负载均衡策略 235
7.3.3将流量管理器集成到Azure网站 238
7.4集成内容传送网络 246
7.5创建Azure存储账户 247
7.5.1启用CDN 249
7.5.2创建URLRewrite规则 249
7.5.3集成CDN注意事项 250
7.6利用Microsoft Azure活动目录实现身份认证 251
7.6.1解决方案体系结构 251
7.6.2创建Azure活动目录 252
7.6.3创建一个使用Azure活动目录认证的ASP.NET网站 254
7.6.4连接Azure网站与Azure活动目录 257
7.6.5测试Azure网站 258
7.7通过混合连接访问企业内部资源 259
7.7.1 Azure混合连接 259
7.7.2应用实例架构 261
7.7.3创建和配置BizTalk混合连接 262
7.7.4开发并部署网站 265
7.8 Azure网站集成虚拟网络 266
7.8.1创建虚拟网络 267
7.8.2新建虚拟机并加入虚拟网络 269
7.8.3安装Redis Cache 270
7.8.4配置Redis虚拟机端点 271
7.8.5将Azure网站通过VPN连接到虚拟网络 271
7.8.6在Azure网站应用中使用RedisCache 273
7.8.7测试网站VPN连接 274
7.9利用Web作业执行后台任务 274
7.9.1 Web作业简介 274
7.9.2 Web作业类型 274
7.9.3 Web作业部署 277
7.9.4 Web作业实例 279
7.9.5 WebJobs SDK 284
7.10利用Application Insights实时洞察用户行为 291
7.10.1获取植入代码 291
7.10.2植入代码 292
7.10.3查看分析报告 295
7.11参考文献与扩展阅读 296
第8章 高级专题 299
8.1使用Kudu站点 299
8.1.1关于Kudu架构 299
8.1.2使用Kudu控制台 299
8.1.3文件管理 302
8.1.4进程管理 303
8.1.5 REST API 303
8.2诊断即服务 305
8.2.1安装诊断即服务 305
8.2.2使用诊断即服务排查PHP性能问题 306
8.3应用配置转换 309
8.3.1 XDT简介 309
8.3.2通过XDT转换修改ApplicationHost.config 310
8.4最佳实践 313
8.4.1设计一个可扩展的架构 313
8.4.2设计一个灵活应变的架构 313
8.4.3合理利用其他Azure服务 313
8.4.4合理利用地理冗余 314
8.4.5选择合适的缩放方案 315
8.4.6及时备份网站 315
8.4.7配置动态IP限制功能 315
8.4.8配置自我修复功能 316
8.4.9采用多租户模式节约系统资源 321
8.5参考文献与扩展阅读 322