Windows Azure Web Role 的 IIS 重置
如果您是一名 Web开发人员,您很可能使用过“简单快捷”的iisreset命令重置运行不正常的
IIS主机。这种方法通常在经典的 Windows Server VM上非常有效。但是,如果您是在
Windows Azure上运行应用程序,请不要运行 iisreset。
如果您阅读了本文章,您可能也会想要浏览我们所有的博客文章,这些文章都非常精彩,我们希望它们能在您开发下一代
Microsoft Azure 应用程序时对您有所帮助。如果您愿意继续浏览,我想说一声非常感谢!
但是如果我们的博客文章并非您读书消遣或睡前阅读的理想选择,您之所以会阅读本文章,可能是因为您尝试在您的
Microsoft Azure VM 上手动重置 IIS,而且现在您已无法访问您的网站。如果是这样,请不要担心,您仍然还有一个快速轻松的解决办法(但请记得,将来不要在
Microsoft Azure Web Role 上运行 Reset IIS)。
为什么不应在 Azure上运行
IIS重置?
当您运行 IIS重置时,将发生的其中一件事就是,负责将客户端连接到您的网站的
Windows万维网发布服务 (W3SVC)会停止工作。
在经典的Windows Server中,W3SVC的“启动类型”为自动。因此,W3SVC服务将自动重启,一切正常运行。
但是在Windows Azure中,W3SVC设置为“使用命令行启动”,因此在您的Web
Role 内部运行的Windows Azure Agent能够在启动角色前配置W3SVC。与经典Windows
Server 中的IIS不同,Azure中的IIS角色并不是一直在运行的,而是由Azure平台控制其生命周期。
如果不使用IIS重置,该如何操作?
如果您在 Windows Azure中托管的
Web应用程序遇到问题,而且您认为此问题可能与 IIS主机有关,我们建议您采取以下操作:
1.尝试找出故障的根本原因,而不是暂时缓解症状。http://blogs.msdn.com/b/kwill/archive/2013/09/19/troubleshooting-scenario-5-internal-server-error-500-in-webrole.aspx上介绍的方法可能是一个很好的开始,或者也可以使用Visual
Studio 进行远程调试-http://msdn.microsoft.com/en-us/library/ff683670.aspx。如果您无法找到问题的根本原因,请联系Microsoft
Azure支持或在论坛中发帖,届时我们的支持团队可协助您确定问题所在。
2.确保您有多个角色实例,这样
Azure负载平衡器便可以将传入流量发送至正常运行的实例。您也可以考虑执行自定义负载平衡器探测,这样一来在
Azure 认为此角色正常运行但 IIS未正常工作时,负载平衡器仍可正确引导流量。
3.最后一招,如果您只是需要让网站快速恢复上线,晚些时候再考虑调试问题,您可通过WindowsAzure管理门户执行角色重启而非
iisreset。
按照如下步骤使网站恢复上线:
1.从您的
MicrosoftAzure Web Role或Worker Role内部,进入“开始”>services.msc
2.在
Services(Local)(服务(本地))列表中,向下滚动找到World
Wide Web Publishing Service(万维网发布服务)。找到了吗?
3.现在,右键单击World
Wide Web Publishing Service(万维网发布服务),然后单击 Start(启动)。好了!您的网站应该已经恢复上线。

但如果您的网站仍无法访问,建议您回到Azure管理门户,在Cloud
Service(云服务)下方找到INSTANCES(实例)选项卡,在您的Web
role 上点击Reboot(重启),重新启动您的VM,就像这样(如果您有多个角色实例,您只需要重启您在其中运行了“iisreset”的实例即可):

希望这些信息对您有所帮助!
本文翻译自:
http://blogs.msdn.com/b/windowsazure/archive/2014/04/30/iis-reset-on-windows-azure-web-role.aspx
Windows Azure Web Role 的 IIS 重置的更多相关文章
- Azure web role, work role 以及其他role
Azure web role, work role 以及其他role 如果没有创建过web role 和work role的话可以参考如下文章来创建一下web role 和work role. htt ...
- [Windows Azure] Windows Azure Web Sites, Cloud Services, and VMs: When to use which?
This document provides guidance on how to make an informed decision in choosing between Windows Azur ...
- Windows Azure Web Site (10) Web Site测试环境
<Windows Azure Platform 系列文章目录> 我们知道,在使用Azure Cloud Service的时候,会有2个不同的环境,称为Production环境和Stagin ...
- Windows Azure Web Site (11) 使用源代码管理器管理Azure Web Site
<Windows Azure Platform 系列文章目录> 熟悉Azure Web Site平台的读者都知道,我们可以通过FTP等方式,把本地的Web Application部署到微软 ...
- Windows Azure Web Site (13) Azure Web Site备份
<Windows Azure Platform 系列文章目录> 我们在使用Windows Azure Web Site的时候,经常会遇到需要对Web Site进行备份的情况.在这里笔者简单 ...
- [New Portal]Windows Azure Web Site (3) 创建Web Site和云端数据库
<Windows Azure Platform 系列文章目录> 在前一章的内容里,我介绍了使用Windows Azure Management Portal创建Web Site.本章,我将 ...
- Windows Azure Web Site (15) 取消Azure Web Site默认的IIS ARR
<Windows Azure Platform 系列文章目录> 我们知道,Azure Web Site (改名为Azure Web App)默认是可以保留Session的.Azure We ...
- 【Azure 云服务】Azure Cloud Service 为 Web Role(IIS Host)增加自定义字段 (把HTTP Request Header中的User-Agent字段增加到IIS输出日志中)
问题描述 把Web Role服务发布到Azure Cloud Service后,需要在IIS的输出日志中,把每一个请求的HTTP Request Header中的User-Agent内容也输出到日志中 ...
- 为Windows Azure Web站点添加MIME类型解决文件下载失败的问题
这几天在倒腾Autodesk 360 Viewer,前面的文章也介绍过了,这将是一个全新的在线模型浏览工具.我做了个实验,把A360Viewer放在一个web 站点,然后发布到Windows Azur ...
随机推荐
- Android之修改部分字体颜色
#01# 方法一: TextView textView = (TextView) view.findViewById(R.id.text); SpannableString ss = new Span ...
- Java之线程的控制
1. join线程: 在线程执行过程中,有时想让另一个线程先执行,比如将一大问题分割成许多小问题,给每一个小问题分配线程,但所有小问题处理完后再让主线程进一步操作.此时我们可以在主线程中调用其它线程的 ...
- CSS自学笔记(16):CSS3 用户界面
CSS3中,也新增了一些关于用户界面的属性,这些属性可以重设元素或者盒子的尺寸.轮廓等等. 新增的部分属性的浏览器支持情况 属性 浏览器支持 resize IE Firefox Chrome Safa ...
- jQuery插入节点的方法
注:摘自<锋利的jQuery(第二版)> append() 向每个匹配的元素内部追加内容: HTML代码:<p>我想说:</p>jQuery代码:$(" ...
- Mono For Android中简单实现按钮的动画效果
Android中动画的分Tween Animation和Frame Animation,本节主要讲Tween Animation的实现. 一般是通过XML文件来定义动画的,具体如下: 1.在项目res ...
- 【HDU】1717 小数化分数2 ——计数原理
小数化分数2 Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Subm ...
- Redis简介以及如何在Windows上安装Redis
Redis简介 Redis是一个速度非常快的非关系型内存数据库. Redis提供了Java,C/C++,C#,PHP,JavaScript,Perl,Object-C,Python,Ruby,Erla ...
- S3C2440实现wifi、3G上网和迷你无线路由的制作(一)
S3C2440实现wifi.3G上网和迷你无线路由的制作 fulinux 凌云实验室 本文将通过ARM.linux平台,借助RT2070/RT3070芯片的无线模块(或使用RT2070/RT3070芯 ...
- Jquery弹窗插件Lhgdialog的用法
Lhgdialog的用法 大家都知道用js可以实现,但是在使用js实现的弹窗时得考虑很东西:浏览器的兼容.页面的交互等等问题. 在这里简单介绍一下lhgdialog的用法. 参数有: Title:弹窗 ...
- PHP+jQuery实现翻板抽奖
翻板抽奖的实现流程:前端页面提供6个方块,用数字1-6依次表示6个不同的方块,当抽奖者点击6个方块中的某一块时,方块翻转到背面,显示抽奖中奖信息.看似简单的一个操作过程,却包含着WEB技术的很多知识面 ...