0

开箱即用的 Azure Web 角色似乎将网站绑定到特定的 IP 地址。作为部署的一部分,我们需要绑定网站以监听 localhost 或 127.0.0.1。

我已将我的服务定义配置如下:

<Startup>
      <Task commandLine="Startup.cmd" executionContext="elevated">
        <Environment>
          <Variable name="ComputeEmulatorRunning">
            <RoleInstanceValue xpath="/RoleEnvironment/Deployment/@emulated" />
          </Variable>
        </Environment>
      </Task>
    </Startup>

在 Starup.cmd 文件中,我在下面一行:

eventcreate /ID 1 /L APPLICATION /T INFORMATION /SO AzureRoleStartup /D "Executing: BindIISSite.ps1" powershell -NoProfile -ExecutionPolicy unrestricted -Command ".\BindIISSite.ps1"

在 BinIISite.ps1 我有下面的 PS 脚本:

import-module WebAdministration
New-WebBinding -Name "*MyWebsite*" -IPAddress "*" -Port 8089 

通过上述所有设置,我注意到“MyWebSite”没有绑定到端口 8089 的 *。

但是当我在 Azure VM 中手动运行 startup.cmd 时,它似乎绑定正确。知道上面可能有什么问题吗?

4

1 回答 1

0

New-WebBindingcmdlet 参数Name不接受通配符,因此在您的脚本中,它正在寻找具有文字 name 的站点,*MyWebSite*这可能会导致绑定失败。

于 2013-12-10T05:50:25.837 回答