我正在尝试通过使用 c# 的程序 IN IIS 7 来部署网站。
我想在默认网站下部署应用程序。
应用程序应该有一个不同的端口号(90),它与默认网站下的其他应用程序分开,甚至是默认网站的默认端口号(即 8080)。
我正在尝试使用ServerManager类以编程方式执行此操作,而无需在网站的web.config文件中指定任何绑定信息。
static void CreateSite()
{
using (ServerManager server = new ServerManager())
{
if (server.Sites != null && server.Sites.Count > 0)
{
Site defaultsite=server.Sites.FirstOrDefault(s => s.Name == "Default Web Site");
if (defaultsite != null)
{
string path = @"C:\inetpub\wwwroot\MyApp\";
//specify the Binding information
string ip = "*";
string port = "90";
string hostName = "*";
string bindingInfo = string.Format(@"{0}:{1}:{2}", ip, port, hostName);
defaultsite.Applications.Add("/MyApp", path);
server.CommitChanges();
}
}
}
}
ServerManager 类允许我们为每个站点创建/更新/删除绑定,而不是为站点下的每个应用程序创建/更新/删除绑定,如下所示。
string ip = "*";
string port = "90";
string hostName = "*";
string bindingInfo = string.Format(@"{0}:{1}:{2}", ip, port, hostName);
BindingCollection bindingCollection = defaultsite.Bindings;
Binding binding = defaultsite.Bindings.CreateElement("binding");
binding["protocol"] = "http";
binding["bindingInformation"] = bindingInfo;
bindingCollection.Add(binding);
server.CommitChanges();
How do i specify a different port number for the application in IIS 7.0 using ServerManager class methods?