我创建了两个这样的网站:
<Sites>
<Site name="WebRole" physicalDirectory="./WebRole">
<Bindings>
<Binding name="Endpoint1" endpointName="HttpEndpoint" />
</Bindings>
</Site>
<Site name="MySite" physicalDirectory="./MySite">
<Bindings>
<Binding name="Endpoint" endpointName="HttpEndpoint" hostHeader="www.MySite.com"/>
</Bindings>
</Site>
</Sites>
我已在CNAME(别名)下更改了我的DNS - &gt; www到xxx.cloudapp.net
因此,当我输入www.MySite.com时,它会进入我的云应用程序,hostHeader被识别并转到正确的物理站点。 HostHeader工作正常。
现在我尝试做与子域相同的事情。
<Site name="MySite" physicalDirectory="./MySite">
<Bindings>
<Binding name="Endpoint" endpointName="HttpEndpoint" hostHeader="sub.MySite.com"/>
</Bindings>
</Site>
在DNS管理器中,我没有尝试在CNAME中执行此操作,而是将子域的掩码转发到同一侧的地址xxx.cloudapp.net。
但这不起作用。它只是打开第一个站点。似乎没有理解HostHeader以指向第二个物理路径。
我错过了什么?
答案 0 :(得分:1)
据我所知,“屏蔽转发”通常使用框架,如果是这种情况,主机标头信息将不会转发到Azure。
您的DNS主机将创建一个带有框架的网站,该框架的数据将来自xxx.cloudapp.net网站。由于没有转发主机头信息,Azure负载均衡器将无法使用备用站点。
我担心您似乎需要使用CNAME系统明确转发主机名。