程序代码创建IISWEB站点

 #region 新建立一个IISWEB站点

        ///<summary>
        ///添加一个站点
        ///</summary>
        public string CreateWebSite()
        {
            int siteID = int.Parse(GetNewWebSiteID());
            try
            {
                root = new DirectoryEntry("IIS://" + this._server + "/W3SVC");
                if (EnsureNewSiteEnavaible(this._serverip + ":" + this._port + ":" + this._domain) || EnsureNewSiteEnavaible(this._server + ":" + this._port + ":" + this._domain))
                {
                    return "该站点已经存在,请重新命名站点!";
                }
                else
                {
                    DirectoryEntry site = (DirectoryEntry)root.Invoke("Create", "IIsWebServer", siteID);
                    site.Invoke("Put", "ServerComment", this._webSiteName);
                    site.Invoke("Put", "KeyType", "IIsWebServer");
                    site.Invoke("Put", "ServerBindings", this._serverip + ":" + this._port + ":" + this._domain);
                    site.Invoke("Put", "ServerState", 2);
                    site.Invoke("Put", "FrontPageWeb", 1);
                    site.Invoke("Put", "DefaultDoc", "default.aspx,index.aspx,index.html,index.htm,default.htm,default.html");
                    site.Invoke("Put", "ServerAutoStart", 1);
                    site.Invoke("Put", "ServerSize", 1);
                    site.Invoke("SetInfo");
                    site.CommitChanges();
                    root.CommitChanges();

                    DirectoryEntry siteVDir = site.Children.Add("Root", "IISWebVirtualDir");                 
                    siteVDir.Properties["AppIsolated"][0] = 2;
                    siteVDir.Properties["Path"][0] = this._path;
                    siteVDir.Properties["AccessFlags"][0] = 513;
                    siteVDir.Properties["FrontPageWeb"][0] = 1;
                    siteVDir.Properties["AppRoot"][0] = string.Format("/LM/W3SVC/{0}/Root", siteID);
                    siteVDir.Properties["AppFriendlyName"][0] = "默认应用程序";
                   
                 
                    PropertyValueCollection propValues = siteVDir.Properties["MimeMap"];
                    IISOle.MimeMapClass newMimeType = new IISOle.MimeMapClass();
                    newMimeType.Extension = ".flv";
                    newMimeType.MimeType = "flv-application/octet-stream";
                    propValues.Add(newMimeType);

                    string strerror = @"400,*,FILE,C:\WINDOWS\help\iisHelp\common\400.htm" +
                        @" 401,1,FILE,C:\WINDOWS\help\iisHelp\common\401-1.htm" +
                        @" 401,2,FILE,C:\WINDOWS\help\iisHelp\common\401-2.htm" +
                        @" 401,3,FILE,C:\WINDOWS\help\iisHelp\common\401-3.htm" +
                        @" 401,4,FILE,C:\WINDOWS\help\iisHelp\common\401-4.htm" +
                        @" 401,5,FILE,C:\WINDOWS\help\iisHelp\common\401-5.htm" +
                        @" 401,7,FILE,C:\WINDOWS\help\iisHelp\common\401-1.htm" +
                        @" 403,1,FILE,C:\WINDOWS\help\iisHelp\common\403-1.htm" +
                        @" 403,2,FILE,C:\WINDOWS\help\iisHelp\common\403-2.htm" +
                        @" 403,3,FILE,C:\WINDOWS\help\iisHelp\common\403-3.htm" +
                        @" 403,4,FILE,C:\WINDOWS\help\iisHelp\common\403-4.htm" +
                        @" 403,5,FILE,C:\WINDOWS\help\iisHelp\common\403-5.htm" +
                        @" 403,6,FILE,C:\WINDOWS\help\iisHelp\common\403-6.htm" +
                        @" 403,7,FILE,C:\WINDOWS\help\iisHelp\common\403-7.htm" +
                        @" 403,8,FILE,C:\WINDOWS\help\iisHelp\common\403-8.htm" +
                        @" 403,9,FILE,C:\WINDOWS\help\iisHelp\common\403-9.htm" +
                        @" 403,10,FILE,C:\WINDOWS\help\iisHelp\common\403-10.htm" +
                        @" 403,11,FILE,C:\WINDOWS\help\iisHelp\common\403-11.htm" +
                        @" 403,12,FILE,C:\WINDOWS\help\iisHelp\common\403-12.htm" +
                        @" 403,13,FILE,C:\WINDOWS\help\iisHelp\common\403-13.htm" +
                        @" 403,15,FILE,C:\WINDOWS\help\iisHelp\common\403-15.htm" +
                        @" 403,16,FILE,C:\WINDOWS\help\iisHelp\common\403-16.htm" +
                        @" 403,17,FILE,C:\WINDOWS\help\iisHelp\common\403-17.htm" +
                        @" 403,18,FILE,C:\WINDOWS\help\iisHelp\common\403.htm" +
                        @" 403,19,FILE,C:\WINDOWS\help\iisHelp\common\403.htm" +
                        @" 403,20,FILE,C:\WINDOWS\help\iisHelp\common\403-20.htm" +
                        @" 404,*,URL,/404.aspx" +
                        @" 404,2,FILE,C:\WINDOWS\help\iisHelp\common\404b.htm" +
                        @" 404,3,FILE,C:\WINDOWS\help\iisHelp\common\404b.htm" +
                        @" 405,*,FILE,C:\WINDOWS\help\iisHelp\common\405.htm" +
                        @" 406,*,FILE,C:\WINDOWS\help\iisHelp\common\406.htm" +
                        @" 407,*,FILE,C:\WINDOWS\help\iisHelp\common\407.htm" +
                        @" 412,*,FILE,C:\WINDOWS\help\iisHelp\common\412.htm" +
                        @" 414,*,FILE,C:\WINDOWS\help\iisHelp\common\414.htm" +
                        @" 415,*,FILE,C:\WINDOWS\help\iisHelp\common\415.htm" +
                        @" 500,12,FILE,C:\WINDOWS\help\iisHelp\common\500-12.htm" +
                        @" 500,13,FILE,C:\WINDOWS\help\iisHelp\common\500-13.htm" +
                        @" 500,15,FILE,C:\WINDOWS\help\iisHelp\common\500-15.htm" +
                        @" 500,16,FILE,C:\WINDOWS\help\iisHelp\common\500.htm" +
                        @" 500,17,FILE,C:\WINDOWS\help\iisHelp\common\500.htm" +
                        @" 500,18,FILE,C:\WINDOWS\help\iisHelp\common\500.htm" +
                        @" 500,19,FILE,C:\WINDOWS\help\iisHelp\common\500.htm";
                    string[] strerrorlist = strerror.Split( );
                    siteVDir.Properties["HttpErrors"].Value = strerrorlist;

                    siteVDir.Invoke("AppCreate", true);
                    root.CommitChanges();
                    siteVDir.CommitChanges();
                    site.CommitChanges();
                    return "创建站点成功!";
                }
            }
            catch (Exception ex)
            {
                return ex.Message;
            }
        }
        #endregion

 

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。