使用与MVC通配符证书在Azure上托管多个SSL站点 [英] Hosting many SSL sites on Azure using a wildcard certificate with MVC
问题描述
下面的应用程序目前运行是我试图迁移到Azure的在Windows 2008 R2服务器上:
The following application currently runs on a Windows 2008 R2 server that I'm attempting to migrate to Azure:
第1部分
首先,我有,基于DNS名称的第一部分路线的客户下面的ASP.NET MVC网站:
First I have the following ASP.NET MVC site that routes customers based on the first part of the DNS name:
https://customer1.myAzureSite.com
https://customer2.myAzureSite.com
https://customer3.myAzureSite.com
...
https://customerN.myAzureSite.com
第2部分
然后,我也有一个不同的IIS网站,用于招收/只签署了
Then, I also have a different IIS website that is used for enrolling/signing up only
https://enroll.myAzureSite.com
第3部分
此应用程序使用的SOA,且有另一站点为businesslayer:
This application uses SOA, and there is another site for the businesslayer:
https://BusinessLayer.myAzureSite.com
工作至今完成
我打算使用地王标签中的配置文件来设置两个站点。我打算使用IIS主机头搭上了登记和businesslayer子域。我有以下几个主题名称的证书 *。myAzureSite.com
I'm planning on using the "sites" tag in the config file to set up two sites. I plan on using IIS host headers to catch the "enroll" and "businesslayer" subdomains. I have a certificate with the following subject name *.myAzureSite.com
问:
如何正确配置我的部署(从Azure的角度),以便所有主机头去我的MVC应用程序,只有一个去登记,另一个为businesslayer
How do I properly configure my deployment (from an Azure perspective) so that all host headers go to my MVC application, and only one goes to "enroll", and another to "businesslayer"
问:
将这项工作正确通过SSL?
Will this work correctly over SSL?
什么<一个href=\"http://www.microsoft.com/technet/prodtechnol/WindowsServer2003/Library/IIS/596b9108-b1a7-494d-885d-f8941b07554c.mspx?mfr=true\"相对=nofollow>媲美配置需要做什么?
推荐答案
我会比较容易的部分开始,你的通配符SSL证书应罚款为这些网站。你只需要确保您添加HTTPS端点,以你的角色,并选择适当的证书。
I'll start with the easy part, your wildcard SSL certificate should be fine for these sites. You'll just need to make sure that you add a https endpoint to your role and select the appropriate certificate.
这是我所看到的,你需要在你的服务定义中定义的三个站点。首先默认的,而将是你的MVC网站。然后,每一个为您的企业和注册网站。您的网站部分可能是这样的:
From what I can see, you'll need three sites defined in your service definition. First the default one while will be your MVC site. Then one each for your business and enroll sites. Your sites section might look something like this:
<Sites>
<Site name="Web">
<Bindings>
<Binding name="mvchttp" endpointName="http" />
<Binding name="mvchttps" endpointName="https" />
</Bindings>
</Site>
<Site name="Enroll" physicalDirectory="\enroll...">
<Bindings>
<Binding name="mvchttp" endpointName="http" hostHeader = "enroll.MyAzureSite.Com" />
<Binding name="mvchttps" endpointName="https" hostHeader = "enroll.MyAzureSite.Com" />
</Bindings>
</Site>
<Site name="BusinessLayer" physicalDirectory="\BusinessLayer...">
<Bindings>
<Binding name="mvchttp" endpointName="http" hostHeader = "BusinessLayer.MyAzureSite.Com" />
<Binding name="mvchttps" endpointName="https" hostHeader = "BusinessLayer.MyAzureSite.Com" />
</Bindings>
</Site>
</Sites>
这篇关于使用与MVC通配符证书在Azure上托管多个SSL站点的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!