专业网站建设品牌,十四年专业建站经验,服务6000+客户--广州京杭网络
免费热线:400-683-0016      微信咨询  |  联系我们

.net C# 程序控制IIS 添加站点域名绑定

当前位置:网站建设 > 技术支持
资料来源:网络整理       时间:2023/2/14 0:48:44       共计:3628 浏览
首先添加两个引用:

System.EnterpriseServices及System.DirectoryServices

然后再在代码中引用:

    using System.DirectoryServices;
    using System.EnterpriseServices;


然后就是如何添加绑定了:

     public static void AddHostHeader(int siteid, string ip, int port, string domain)//增加主机头(站点编号.ip.端口.域名)
            {
                DirectoryEntry site = new DirectoryEntry("IIS://localhost/W3SVC/" + siteid);
                PropertyValueCollection serverBindings = site.Properties["ServerBindings"];
                string headerStr = string.Format("{0}:{1}:{2}", ip, port, domain);
                log4net.LogManager.GetLogger("root").Info(serverBindings.PropertyName + serverBindings.Value.ToString());
                if (!serverBindings.Contains(headerStr))
                {
                    serverBindings.Add(headerStr);
                }
                site.CommitChanges();
            }


其中,siteid,自己到IIS中看,ip不指定的话填"*",端口一般是80,域名是怎么多少就入多少

注意:

1、添加后,会自动重启站点;

2、如果里面某个域名,重复添加,网站在重启的过程中会起不来,那就完蛋了,这个必须要配合自己的数据库;

3、必须在web.config添加权限配置:

  <system.web>
      <identity impersonate="true" userName="Administrator" password="password" />
  </system.web>


4、如果在IIS7中出现: DirectoryEntry配置IIS7出现ADSI Error:未知错误(0x80005000)
“控制面板”->“程序和功能”->面板左侧“打开或关闭windows功能”->“Internet信息服务”->“Web管理工具”->“IIS 6管理兼容性”->“IIS 元数据库和IIS 6配置兼容性”。更理想的解决方式是用 WMI provider操作IIS 7 ,可参见此篇文章http://msdn.microsoft.com/en-us/library/aa347459.aspx
版权说明:
本网站凡注明“广州京杭 原创”的皆为本站原创文章,如需转载请注明出处!
本网转载皆注明出处,遵循行业规范,如发现作品内容版权或其它问题的,请与我们联系处理!
欢迎扫描右侧微信二维码与我们联系。
·上一条:IIS中配置多个项目在同一个域名下 | ·下一条:C#操作IIS服务

Copyright © 广州京杭网络科技有限公司 2005-2024 版权所有    粤ICP备16019765号 

广州京杭网络科技有限公司 版权所有