我正在使用Microsoft.Web.Adminsitration程序集来创建应用程序池和网站。
参考:
此自定义网站应具有用于http通信的端口80。由于“默认网站”默认也使用端口80,我需要以编程方式将其更改为另一个端口(例如90)。有没有办法以编程方式执行此操作?
答案 0 :(得分:3)
以下是将默认网站上的现有端口80 http绑定更改为端口90的示例代码片段:
int iisNumber = 1; // Default Website is IIS#1
using(ServerManager serverManager = new ServerManager())
{
Site site = serverManager.Sites.FirstOrDefault(s => s.Id == iisNumber);
if(site != null)
{
Binding binding = site.Bindings
.Where(b => b.BindingInformation == "*:80:" && b.Protocol == "http")
.FirstOrDefault();
binding.BindingInformation = "*:90:";
serverManager.CommitChanges();
Console.WriteLine("");
}
}
BindingInformation
字段是由以下内容组成的字符串:
<ip address>:<port>:<host header>
例如:
*:80:
- 侦听所有IP地址,端口80,无主机头*:90:example.com
- 侦听所有IP地址,端口80但是如果主机标头匹配example.com
172.16.3.1:80:example.com
- 侦听IP地址172.16.3.1,端口80以及主机标头是example.com
答案 1 :(得分:0)
您提到的博文中的第二行“创建网站”向您展示了如何...
iisManager.Sites.Add("NewSite", "http", "*:8080:", "d:\\MySite");
参数*:8080
表示网站应该在端口8080 上侦听绑定到计算机的所有IP地址。只需将8080更改为您想要的端口即可。
仅供参考,8080是网站的传统“离港”位置。请记住,您不希望与使用端口的其他服务冲突。您可以在此处查看保留/注册端口列表:http://en.wikipedia.org/wiki/List_of_TCP_and_UDP_port_numbers