0

我正在尝试通过使用 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?

4

1 回答 1

0

您可以创建一个新网站并将其分配给您选择的端口号。在该网站下,您可以配置您的应用程序。

于 2015-10-28T07:30:47.280 回答