开箱即用的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“执行: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时,它似乎正确绑定。知道上面可能有什么问题吗?
答案 0 :(得分:0)
New-WebBinding
cmdlet参数Name
不接受通配符,因此在您的脚本中,它正在查找文字名为*MyWebSite*
的网站,这可能导致绑定到失败。