我有一个脚本,我在Windows 2008 R2上用来创建我们公司所做的小特性的网站。我在Windows 2012上使用此脚本时遇到问题,看来IP绑定就是问题所在。我们一直将我们的网站绑定到特定的IP而不是使用所有接口。
无论如何,这是一个功能的精简副本:
function New-TestWebSite
{
[CmdletBinding()]
param
(
[Parameter(Mandatory=$True,
ValueFromPipeLine=$True,
HelpMessage="WWW<webidentifier> app pool and website will be created")]
[ValidateNotNull()]
[string] $WebIdentifier,
[string] $BindIP,
[ValidateNotNull()]
[int] $Port
)
BEGIN {}
PROCESS
{
$name = "WWW$WebIdentifier"
$path = "F:\Websites\$name"
New-WebAppPool -name $name
#New-Website -name $name -port $port -ip $BindIP -PhysicalPath $path -ApplicationPool $name
New-Website -name $name -port $port -ip 172.30.219.249 -PhysicalPath $path -ApplicationPool $name
}
END {}
}
评论的New-Website系列在Windows 2008 R2上运行良好,但在Windows 2012上不起作用。根据technet和get-help,new-website的ip参数是一个字符串,但传入一个字符串似乎不太上班。网站已创建但不可浏览(HTTP 400错误请求 - 无法找到网页)。未注释的新网站线路可以工作,但是很糟糕,因为它需要对IP进行硬编码,我希望避免使用。
有关如何处理此事的任何建议吗?
编辑12 / 18- 我在网站上尝试了New-WebsiteBinding,我之前通过传入IP添加了(因为它没有运行)。这些绑定也不起作用。我会尽可能在另一台服务器上尝试整个交易。
$ip = "172.30.219.149"
New-WebBinding -Name "WWW8183" -IPAddress $ip -Port 8192
这就是applicationhost.config中的样子。 WWW8184函数和WWW8183(所有绑定)都没有:
<site name="WWW8183" id="2" serverAutoStart="true">
<application path="/" applicationPool="WWW8183">
<virtualDirectory path="/" physicalPath="F:\Websites\WWW8183" />
</application>
<bindings>
<binding protocol="http" bindingInformation="172.30.219.149:8183:" />
<binding protocol="http" bindingInformation="172.30.219.149:8192:" />
<binding protocol="http" bindingInformation="172.30.219.149:8193:" />
</bindings>
</site>
<site name="WWW8184" id="3" serverAutoStart="true">
<application path="/" applicationPool="WWW8184">
<virtualDirectory path="/" physicalPath="F:\Websites\WWW8184" />
</application>
<bindings>
<binding protocol="http" bindingInformation="172.30.219.249:8184:" />
</bindings>
</site>
防火墙上没有任何掉落。 IUSR在F:\上继承了RX。
我现在非常接近将所有界面放在网站上。我们确实使用netsh http add iplisten将IIS仅绑定到主IP。
netsh http show iplisten
IP addresses present in the IP listen list:
-------------------------------------------
172.30.219.249
编辑 - 2013年12月19日 在另一台2012服务器上尝试了我的功能,结果相同。绑定似乎不起作用,直到我通过GUI添加另一个,并立即运行。