ASP.NET bir uygulamada uygulama ve dizine özgü yapılandırma ayarları yapma

Bu makalede, ASP.NET'de uygulamaya özgü ve dizine özgü yapılandırma ayarlarının nasıl ayarlandığı açıklanmaktadır.

Orijinal ürün sürümü: ASP.NET
Özgün KB numarası: 815174

Özet

Web.config dosyası bir ASP.NET uygulamasının kök dizinindedir. Web.config dosyası, uygulamaya özgü yapılandırma bilgilerini belirtir. Yapılandırma ayarlarını dizin başına da ayarlayabilirsiniz. Bunu yapmanın iki yolu vardır:

  • Uygulamadaki dizinlere birden çok Web.config dosyası dağıtın. ASP.NET uygulama dizinine, ayarları üst düzey bir Web.config dosyasında veya sistem makinesi yapılandırması ( Machine.config ) dosyasında geçersiz kılan ayarlarlaWeb.configbir dosya ekleyin.

  • Dizin başına veya dosya başına ayarları doğrudan uygulama Web.config dosyasına ekleyin. Bu yöntem, dizin başına yapılandırma ayarlarını açmak için tek bir Web.config dosyası kullanır. ASP.NET web uygulamalarında yapılandırma ayarlarını zorlamak ve ardındanWeb.config dosyaların Machine.config ayarlarını geçersiz kılmasını durdurmak için Machine.config dosyasında bu yöntemi de kullanabilirsiniz.

Machine.config dosyasındaki location öğesini kullanma

Bir web uygulaması veya dizini için geçerli ayarları belirtmek için, öğesini <configuration> sistem Machine.config dosyasının öğesine ekleyebilirsiniz<location>. Yapılandırma ayarlarını tek bir dosyada merkezi hale getirdiğinizde kullanışlıdır. Web barındırma ortamlarında, tek tek web uygulamalarında belirli yapılandırma ayarlarını zorunlu tahkik etmek de yararlıdır.

<location> öğesi iki öznitelik path içerir ve allowOverride. özniteliği, path yapılandırma ayarlarının kapsadığı siteyi veya sanal dizini tanımlar. öğesindeki <location> ayarların varsayılan Web sitesine uygulanacağını belirtmek için özniteliğini path olarak Default Web Siteayarlayın. Ayarların varsayılan web sitesinde MyApp adlı uygulamaya uygulanacağını belirtmek için özniteliğini path olarak Default Web Site/MyAppayarlayın.

allowOverride Öznitelik false olduğunda, web uygulaması dizinlerindeki Web.config dosyaları öğesinde <location> belirttiğiniz ayarları geçersiz kılamaz. Uygulama geliştiricilerini web uygulamasını yapılandırma yöntemleriyle kısıtlamanız gereken ortamlarda kullanışlı bir ayardır. Aşağıdaki örnekte birMachine.config dosyasının bir bölümü gösterilmektedir. Dosya, varsayılan Web sitesindeki MyApp uygulamasına erişmek için kimlik doğrulaması gerektirir ve Web.config bir dosyadaki ayarlar tarafından geçersiz kılınamaz.

<configuration>
    <location path="Default Web Site/MyApp" allowOverride="false">
        <system.web>
            <authorization>
                <allow users="?" />
            </authorization>
        </system.web>
    </location>
</configuration>

Web.config dosyasındaki location öğesini kullanma

Belirli bir uygulama veya dizine uygulanacak ayarları belirtmek için öğesini <configuration> bir uygulama Web.config dosyasının öğesine ekleyin<location>. <location> öğesi genellikleWeb.config<system.web> dosyasında kullandığınız öğeyi ve diğer yapılandırma öğelerini tam olarak içerir. path öğesinin <location> özniteliği, konum yapılandırma öğelerinin uygulandığı sanal dizini veya dosya adını belirtir. Aşağıdaki örnek, forum sanal dizini için özel hata iletilerini belirten bir uygulama Web.config dosyasının bir bölümünü gösterir.

<configuration>
    <location path="forum" >
        <system.web>
            <customErrors mode="RemoteOnly" defaultRedirect="forum-error.aspx">
                <error statusCode="404" redirect="forum-file-not-found.aspx" />
            </customErrors>
        </system.web>
    </location>
</configuration>

Başvurular