gpt4 book ai didi

azure - 使用 SSL 的多个 Azure Web角色 - 如何设置解决方案?

转载 作者:行者123 更新时间:2023-12-02 01:58:44 24 4
gpt4 key购买 nike

我有一个最终看起来像这样的解决方案:

http://www.test.com - 公共(public)营销网站(端口80)

https://www.test.com - 用于经过身份验证的用户的 MVC Web 应用程序(端口 443)

https://api.test.com - 所有客户端都将使用的 WebAPI 层(希望端口 443)

最初该应用程序将是一个MVC网站,但我们还计划为Windows Phone、Windows 8等开发 native 客户端。所有客户端,包括MVC应用程序网站将使用WebAPI服务层进行数据操作。所有客户端也将利用可移植类库。

我注册了两个 SSL 证书。一种用于 www.test.com,另一种用于 api.test.com。

当我配置角色(WebRole.Public、WebRole.Application 和 WebRole.WebAPI)时,我被告知端口 443 已分配给另一个 WebRole(本例中为应用程序 WebRole),我需要使用下一个可用端口这是 8443。

我担心的是,如果我使用端口 8443,它对防火墙不友好,这意味着 future 的客户端(Windows Phone、Win8 等)在不打开防火墙的情况下将无法工作。我真的很想在应用程序和 webapi WebRoles 上使用 443。

如果我设置多个 Azure 项目以允许在 WebRole.WebAPI 和 WebRole.Application 上使用端口 443,是否可以在本地进行调试?

推荐的解决方案配置是什么?我们使用的是 Visual Studio 2013。

最佳答案

如果您想对同一服务上的两个站点使用相同的端口,则只需拥有一个角色并使用两个站点进行设置,并为第二个站点设置主机 header (在您的情况下,我建议api.test.com)。已满documentation on MSDN 。所以你的服务定义应该是这样的:

<WebRole name="Test" vmsize="Small">
<Sites>
<Site name="Web">
<Bindings>
<Binding name="Endpoint1" endpointName="HttpInput" />
<Binding name="Endpoint1" endpointName="HttpsInput" />
</Bindings>
</Site>
<Site name="Api" physicalDirectory="[Relative Path to Published API">
<Bindings>
<Binding name="ApiEndpoint" endpointName="HttpsInput" hostHeader="api.test.com" />
</Bindings>
</Site>
</Sites>
<Endpoints>
<InputEndpoint name="HttpInput" protocol="http" port="80" />
<InputEndpoint name="HttpsInput" protocol="https" port="443" certificate="SSL" />
</Endpoints>

关于azure - 使用 SSL 的多个 Azure Web角色 - 如何设置解决方案?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18470636/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com