我的Azure网络应用程序(example.azurewebsites.net)有一个自定义域applicationhost.config:
<sites>
<site name="example" id="111111111">
<bindings>
<binding protocol="http" bindingInformation="*:80:customdomain.com" />
<binding protocol="https" bindingInformation="*:443:customdomain.com" />
<binding protocol="http" bindingInformation="*:80:example.azurewebsites.net" />
<binding protocol="https" bindingInformation="*:443:example.azurewebsites.net" />
</bindings>
<application path="/" applicationPool="example" preloadEnabled="true">
<virtualDirectory path="/" physicalPath="D:\home\site\wwwroot" />
<virtualDirectory path="/iisnodedebugger" physicalPath="C:\DWASFiles\Sites\example\Temp\iisnode" />
</application>
<traceFailedRequestsLogging enabled="false" customActionsEnabled="true" directory="D:\home\LogFiles" />
<detailedErrorLogging enabled="true" directory="D:\home\LogFiles\DetailedErrors" />
<logFile logSiteId="false" />
</site>
...
</sites>
自定义域的bindigs会自动添加到默认站点(示例)。
我想更改它,我想创建一个绑定到自定义域(customdomain.com)的新网站。
applicationHost.xdt(使用IIS管理器创建):
<?xml version="1.0" encoding="utf-8"?>
<configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform">
<system.applicationHost>
<sites>
<site name="example" xdt:Locator="Match(name)">
<bindings>
<binding bindingInformation="*:443:customdomain.com" xdt:Locator="Match(bindingInformation)" xdt:Transform="Remove" />
<binding bindingInformation="*:80:customdomain.com" xdt:Locator="Match(bindingInformation)" xdt:Transform="Remove" />
</bindings>
</site>
<site name="customdomain" id="222222222" xdt:Transform="InsertAfter(/configuration/system.applicationHost/sites/site[(@name='example')])">
<bindings>
<binding protocol="http" bindingInformation="*:80:customdomain.com" />
<binding protocol="https" bindingInformation="*:443:customdomain.com" />
</bindings>
<application path="/" applicationPool="example" preloadEnabled="true">
<virtualDirectory path="/" physicalPath="D:\home\site\wwwroot2" />
<virtualDirectory path="/iisnodedebugger" physicalPath="C:\DWASFiles\Sites\example\Temp\iisnode" />
</application>
</site>
</sites>
</system.applicationHost>
</configuration>
重启后,转换成功。
问题:它没有效果。 customdomain.com仍然来自“D:\ home \ site \ wwwroot”,而不是“D:\ home \ site \ wwwroot2”。
之后我只删除了bindigs而没有添加新网站,customdomain仍在工作......之后我删除了整个网站(示例),example.azurewebsites.net和customdomain.com仍在工作。
我错在哪里?是不是可以操纵网站部分?
答案 0 :(得分:2)
我可以问你为什么要努力让自己的生活变得更好?
为什么不将第二个应用程序部署到新的Web应用程序?如果成本是最重要的,您可以共享相同的应用服务计划(相同的VM)。
每个Web应用程序都有自己的自定义域设置,您可以通过门户网站直观配置:
https://azure.microsoft.com/en-gb/documentation/articles/web-sites-custom-domain-name/
答案 1 :(得分:0)
我在webconfig中这样做了,它似乎有效:
**<rule name="REDIRECT To Site Within a Site" enabled="true" stopProcessing="true">
<match url=".*" />
<conditions>
<add input="{HTTP_HOST}"pattern="^www\.SiteWithinSiteName\.com$" />
<add input="{PATH_INFO}" pattern="^/path/SiteWithinSiteRoot/" negate="true" />
</conditions>
<action type="Rewrite" url="\path\SiteWithinSiteRoot\{R:0}" />
</rule>**