Set-Cookie yanıtı içeren bir HTTP üstbilgisi ASP.NET sayfasını oluştururken bir ASP.NET sayfasını IIS 6.0 HTTP.sys çekirdek önbelleğinde depolanır

Makale çevirileri Makale çevirileri
Makale numarası: 917072 - Bu makalenin geçerli olduğu ürünleri görün.
Hepsini aç | Hepsini kapa

Bu Sayfada

Belirtiler

Şu senaryoyu inceleyin. Bir Microsoft ASP.NET sayfasını içeren < % OutputCache @ %> yönergesi. Ayrıca, ASP.NET sayfayı bir Set-Cookie yanıtı içeren bir HTTP üstbilgisi oluşturur. Bu senaryoda, ASP.NET sayfasını, Microsoft ınternet ınformation Services (IIS) 6.0 HTTP protokol yığını (HTTP.sys) çekirdek önbelleğinde depolanır. Bu nedenle, aynı sayfada erişen birden çok kullanıcının aynı tanımlama bilgileri alabilirsiniz.

Pratik Çözüm

Bu soruna geçici bir çözüm bulmak için <a0></a0>, aşağıdaki yöntemlerden durumunuza uygun olanını kullanın.

Yöntem 1: çekirdek modu önbelleğe almayı devre dışı bırak.

Çekirdek modu sistem çapında önbelleğe alınmasını devre dışı bırakabilir veya çekirdek modu, belirli bir ASP.NET uygulaması için önbelleğe alma devre dışı bırakabilirsiniz. ASP.NET uygulamasında Çıkış önbellekleme kullanmaya devam edebilirsiniz, çünkü bu geçici çözümü tercih edilen yöntemdir. Çekirdek modu önbelleğe almayı devre dışı bırakmak için şu adımları izleyin:
  1. Çekirdek modu sistem çapında önbelleğe alınmasını devre dışı bırakmak isterseniz, Machine.config yapılandırma dosyası açın. Bu dosya aşağıdaki klasörde bulunmaktadır:
    Drive: \WINDOWS\Microsoft.NET\Framework\ Version \confıg
    NotDrive, işletim sisteminin yüklü olduğu sürücü için bir yer tutucudur. Version yüklü olan Microsoft .NET Framework sürüm numarası için bir yer tutucudur.

    Çekirdek modu, belirli bir ASP.NET uygulaması için önbelleğe alma devre dışı bırakmak isterseniz, Web.config yapılandırma dosyasına açın. Bu dosya, ASP.NET uygulama klasöründe bulunur.
  2. Yapılandırma dosyasında <httpruntime>bulun. öğesini ve sonra aşağıdaki özniteliğini ekleyin:
    enableKernelOutputCache = "false"

Yöntem 2: belirli bir ASP.NET sayfasını çıkış önbelleği devre dışı bırak.

Set-Cookie yanıtı içeren bir HTTP üstbilgisi oluşturur belirli ASP.NET sayfasını çıkış önbelleği devre dışı bırakabilirsiniz. Ancak, her bir ASP.NET sayfasını, bir tanımlama bilgisini oluşturan tüm uygulama tanımlamanız gerekir. Örneğin, oturum durumunu korumak için tanımlama bilgileri kullanarak, bir kullanıcı olarak erişen herhangi bir sayfayı bir tanımlama bilgisi oluşturabilir.

Belirli bir ASP.NET sayfasını çıkış önbelleği devre dışı bırakmak için <a0></a0>, silme < % OutputCache @ %> yönergesini önbelleğe alınmasını istemediğiniz herhangi bir .aspx dosya. Hakkında daha fazla bilgi için < % OutputCache @ %> yönergesini ASP.NET sayfalarında, aşağıdaki Microsoft Developer Network (MSDN) Web sitesini ziyaret edin:
http://msdn2.microsoft.com/en-us/library/zd1ysf1y(VS.80).aspx

Durum

Microsoft, "Geçerli Olduğu Ürünler" bölümünde listelenen Microsoft ürünlerinde bu sorunun olduğunu onaylamıştır.

Daha fazla bilgi

ASP.NET Ayarlar şemasında enableKernelOutputCache öznitelik hakkında daha fazla bilgi için aşağıdaki MSDN Web sitesini ziyaret edin:
http://msdn2.microsoft.com/en-us/library/e1f13641.aspx
Çekirdek modu sürücüsü HTTP.sys için kayıt defteri ayarlarının nasıl yapılandırılacağı hakkında daha fazla bilgi için Microsoft Knowledge Base'deki makaleyi görüntülemek üzere aşağıdaki makale numarasını tıklatın:
820129IIS için HTTP.sys kayıt defteri ayarları

Özellikler

Makale numarası: 917072 - Last Review: 3 Aralık 2007 Pazartesi - Gözden geçirme: 1.5
Bu makaledeki bilginin uygulandığı durum:
  • Microsoft Internet Information Services 6.0
  • Microsoft ASP.NET 2.0
  • Microsoft ASP.NET 1.1
  • Microsoft ASP.NET 1.0
Anahtar Kelimeler: 
kbmt kbasp kbhttpruntime kbcookie kbconfig kbcaching kbtshoot kbprb KB917072 KbMttr
Machine-translated Article
ÖNEMLİ: Bu makale, bir kişi tarafından çevrilmek yerine, Microsoft makine-çevirisi yazılımı ile çevrilmiştir. Microsoft size hem kişiler tarafından çevrilmiş, hem de makine-çevrisi ile çevrilmiş makaleler sunar. Böylelikle, bilgi bankamızdaki tüm makalelere, kendi dilinizde ulaşmış olursunuz. Bununla birlikte, makine tarafından çevrilmiş makaleler mükemmel değildir. Bir yabancının sizin dilinizde konuşurken yapabileceği hatalar gibi, makale; kelime dağarcığı, söz dizim kuralları veya dil bilgisi açısından yanlışlar içerebilir. Microsoft, içeriğin yanlış çevrimi veya onun müşteri tarafından kullanımından doğan; kusur, hata veya zarardan sorumlu değildir. Microsoft ayrıca makine çevirisi yazılımını sıkça güncellemektedir.
Makalenin İngilizcesi aşağıdaki gibidir:917072

Geri Bildirim Ver

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com