enc*_*cee 11 debugging azure visual-studio-2010
我安装了Windows Azure SDK 1.6和Azure工具.我有一个Web角色(有两个端点,http为80端口,https为端口443),只有一个Web角色实例运行(用于测试目的).
当我上周从Visual Studio运行它进行调试时,它运行了模拟器,将其附加到IIS,绑定为127.0.0.1:80,一切都很好.
但截至昨天,我一开始尝试将其绑定到127.255.0.1:82并且它停止使用此错误(来自Visual Studio):
将调试器附加到URL" http://127.255.0.0:82 " 的iis工作进程时出错
现在,如果我手动转到IIS并更改绑定,我可以通过浏览器访问该站点,但显然我无法通过VS调试它.
为什么Visual Studio会这样做?是什么让它从上周发生了变化(我只进行了代码更改并且我已将它们评论出来)?
编辑:我知道这个博客,但我的问题似乎有所不同,因为一个原因我在事件日志中没有错误.就像我在IIS中手动更改绑定时提到的那样,我可以正确访问该站点,以便正确配置应用程序池.
Edit2:我有以下几组:
<compilation debug="true" targetFramework="4.0" />
Run Code Online (Sandbox Code Playgroud)
我的云项目也设置为启动项目.
ast*_*kov 10
当我上周从Visual Studio运行它进行调试时,它运行了模拟器,将其附加到IIS,绑定为127.0.0.1:80,一切都很好.
我不相信您曾经在与IIS的127.0.0.1:80绑定上调试过Azure Emulator部署的项目.您调试的内容可能只是Web应用程序项目,而不是Azure已部署的项目.让我解释一下原因:
Windows Azure仿真器使用内部仿真的负载均衡器(LB).这个模拟的LB绑定到127.0.0.1端口80(如果已经使用端口80它使用端口81)
Windows Azure Tools为您拥有的每个Webrole实例动态创建虚拟IP地址.这些动态IP地址为127.255.0.X,其中X是实例的逻辑编号(0,1,2等等).
Windows Azure工具在本地IIS中创建一个网站,绑定127.255.0.X和端口82

对于您定义的每个实例,重复步骤3.
开始调试时,浏览器通常会打开http://127.0.0.1:81/,这是LB的地址.但是来自此地址的请求将转发到IIS及其绑定到127.255.0.X:82.您无法通过手动将调试器附加到127.0.0.1:80来调试Windows Azure仿真器部署的项目,因为如果一切正常,则没有w3wp进程侦听该地址:端口,但Azure模拟LB.
当您只拥有WebRole(未定义其他站点)时,Windows Azure Tools确实知道它应将调试器附加到w3wp进程正在侦听的127.255.0.X:82.
这是Azure Emulator和SDK&Tools v.1.6的干净工作配置(我认为1.5甚至回到1.3,首次引入了完整的IIS模式)
现在,如果我手动转到IIS并更改绑定,我可以通过浏览器访问该站点,但显然我无法通过VS调试它.
是的,您将能够访问该站点,但以这种方式您正在跳过模拟的LB,这不是开发Windows Azure应用程序时的重点.
如果您正在解决此类问题,我建议您清理解决方案,重新启动计算机,如果问题仍然存在,请卸载SDK&Tools并使用Web执行干净的完整安装SDK和Authoring tols for Windows Azure v.1.6平台安装程序.
| 归档时间: |
|
| 查看次数: |
5469 次 |
| 最近记录: |