آبان انفورماتيك

ايجاد Virtual Directory در يك وبسايت خاص از IIS 6.0

سايت ها و وبلاگ هاي زيادي در مورد نحوه ي سايت Virtual Directory در IIS صحبت كرده اند. اما هيچ كدام به طور دقيق روش اين كار را شرح نداده اند و يا تنها به وبسايت Default بسنده كرده اند.

در اينجا روش ساخت Virtual Directory در يك وبسايت خاص از IIS 6.0 را بررسي مي كنيم. ابتدا بايستي از امكان ايجاد Virtual Directory اطمينان پيدا كنيم. از متغير bCanCreate براي اين كار استفاده مي كنيم.

            System.DirectoryServices.DirectoryEntry iISSchema =
                new System.DirectoryServices.DirectoryEntry
                    ("IIS://" + sWebSite + "/Schema/AppIsolated");
            bool bCanCreate = 
                (iISSchema.Properties["Syntax"].Value.ToString().ToUpper() 
                    == "BOOLEAN");
            iISSchema.Dispose();

در صورتي كه مقدار bCanCreate برابر با True بود، ID وبسايت مورد نظر را پيدا كرده و در SiteID نگهداري مي كنيم. فرض بر اين است كه اسم وبسايت در متغير sWebSite قرار داده شده است.

            int SiteID = 1;
            System.DirectoryServices.DirectoryEntry root = 
                new DirectoryEntry("IIS://LocalHost/W3SVC");

            foreach (System.DirectoryServices.DirectoryEntry e 
                in root.Children)
            {
                if (e.SchemaClassName.ToUpper() == "IISWEBSERVER"
                    && ((string)e.Invoke("Get", "ServerComment")).ToUpper() 
                    == sWebSite.ToUpper())
                {
                    SiteID = Convert.ToInt32(e.Name);
                    break;
                }
            }

در صورتي كه پوشه اي كه Virtual Directory به آن اشاره مي كند وجود نداشت، آن را مي سازيم. فرض بر اين است كه آدرس پوشه در متغير sPath قرار داده است.

            if (!System.IO.Directory.Exists(sPath))
            {
                System.IO.Directory.CreateDirectory(sPath);
            }

در صورتي كه وبسايت مورد نظر، Virtual Directory اي با همين نام داشته باشد، آن را حذف مي كنيم. فرض بر اين است كه اسم Virtual Directory در متغيري به نام sAppName قرار داده شده است.

            System.DirectoryServices.DirectoryEntry iISAdmin = 
                new System.DirectoryServices.DirectoryEntry
                    ("IIS://LocalHost/W3SVC/" + SiteID.ToString() + "/Root");

            foreach (System.DirectoryServices.DirectoryEntry vd 
                in iISAdmin.Children)
            {
                NLog.File.Instance.Debug("DataProvider", "8");
                if (vd.Name == sAppName)
                {
                    iISAdmin.Invoke("Delete", 
                        new string[] { vd.SchemaClassName, sAppName });
                    iISAdmin.CommitChanges();
                    break;
                }
            }

Virtual Directory مورد نظر را اضافه كرده و خصوصيات آن را تنظيم مي كنيم:

            System.DirectoryServices.DirectoryEntry vdir = 
                iISAdmin.Children.Add(sAppName, "IIsWebVirtualDir");

            vdir.Properties["Path"][0] = sPath;
            vdir.Properties["AppFriendlyName"][0] = sAppName;
            vdir.Properties["AppPackageName"][0] = sAppName;
            vdir.Properties["EnableDirBrowsing"][0] = false;
            vdir.Properties["AccessRead"][0] = true;
            vdir.Properties["AccessExecute"][0] = true;
            vdir.Properties["AccessWrite"][0] = true;
            vdir.Properties["AccessScript"][0] = true;
            vdir.Properties["AuthNTLM"][0] = true;
            vdir.Properties["EnableDefaultDoc"][0] = true;
            vdir.Properties["DefaultDoc"][0] = 
                "default.htm,default.aspx,default.asp";
            vdir.Properties["AspEnableParentPaths"][0] = true;

            vdir.CommitChanges();

            vdir.Invoke("AppCreate", 1);
انجام اين اقدامات نيازمند Permission هاي خاصي است كه بايستي از طريق Impersonation در قبل شرح داده شده است فراهم شوند.
توجه كنيد

 

 

درخواست Demo

شما مي توانيد درخواست Demo خود را براي هر يك از محصولات آبان براي ما ارسال كنيد. در كمتر از 24 ساعت جهت برگزاري جلسه دمو با شما تماس گرفته خواهد شد.

محصولات

 Smart Doc
مديريت اسناد سازماني
 Smart Planner
مديريت كنترل پروژه
 Smart Gate
پرتال سازماني
 Smart Letter
پست الكترونيك فارسي
 Smart Web
مديريت محتواي وب
 Smart Communicate
انتقال دهنده فايل و داده
 Smart Schedule
زمانبند اجراي برنامه ها

آگهي و تبليغات رايگان

وب سايت آگهي ساز با تلاش گروه هاي فني شركت آبان انفورماتيك آماده خدمت رساني به كاربران گرامي مي باشد.
به خاطر داشته باشيد، كليه سرويس ها و خدمات از قبيل تصوير، لينك و يا امكان نمايش در صفحه اول در آگهي ساز، كاملاً رايگان است.

آبان انفورماتيك

جهت دريافت اطلاعات درباره آبان يا ارسال نظرات مي توانيد از صفحه درباره ما ، تماس با ما و ارسال نظرات استفاده كنيد.


شما اينجا هستيد  : صفحه اصلي پايگاه دانش مقالات ايجاد Virtual Directory در يك وبسايت خاص از IIS 6.0

دانلود

بسياري از كتاب هاي علمي روز در زمينه كامپيوتر و نيز آيكون هاي زيبا جهت طراحي زيباتر نرم افزار شما  آماده دانلود مي باشند.

مقالات

بخش مقالات وب سايت آبان انفورماتيك با ارائه مقالات طبقه بندي در زمينه هاي مختلف نرم افزار، سخت افزار و گرافيك و ... پاسخگوي سوالات شماست.

ارسال بروشور

با ارسال درخواست در بخش ارسال بروشور، در كتر از 48 ساعت جهت ارسال بروشور محصول مورد نظر شما اقدام خواهد شد.

پشتيباني

با ارسال درخواست پشتيباني براي هر يك از محصولات ، در كمتر از 2ساعت جهت رفع سوالات يا مشكلات اقدام مي شود.