Zwischenspeicherungsprofile <profiles>
Übersicht
Das <profiles>
-Element des <caching>
-Elements gibt ein Profil an, das für die Ausgabezwischenspeicherung verwendet werden soll.
Kompatibilität
Version | Hinweise |
---|---|
IIS 10.0 | Das <profiles> -Element wurde in IIS 10.0 nicht geändert. |
IIS 8.5 | Das <profiles> -Element wurde in IIS 8.5 nicht geändert. |
IIS 8.0 | Das <profiles> -Element wurde in IIS 8.0 nicht geändert. |
IIS 7.5 | Das <profiles> -Element wurde in IIS 7.5 nicht geändert. |
IIS 7.0 | Das <profiles> -Element des <caching> -Elements wurde in IIS 7.0 eingeführt. |
IIS 6.0 | N/V |
Setup
Das <profiles>
-Element des <caching>
-Elements ist in der Standardinstallation von IIS 7 enthalten.
Gewusst wie
Konfigurieren der Seitenausgabezwischenspeicherung
Öffnen Sie Internetinformationsdienste-Manager (IIS-Manager):
Vorgehensweise unter Windows Server 2012 oder Windows Server 2012 R2:
- Klicken Sie auf der Taskleiste auf Server-Manager > Tools > Internetinformationsdienste-Manager (IIS-Manager).
Vorgehensweise unter Windows 8 oder Windows 8.1:
- Halten Sie die WINDOWS-TASTE gedrückt, drücken Sie den Buchstaben X, und klicken Sie dann auf Systemsteuerung.
- Klicken Sie auf Verwaltung, und doppelklicken Sie dann auf Internetinformationsdienste-Manager (IIS-Manager).
Vorgehensweise unter Windows Server 2008 oder Windows Server 2008 R2:
- Klicken Sie auf der Taskleiste auf Start, zeigen Sie auf Verwaltung, und klicken Sie dann auf Internetinformationsdienste-Manager (IIS-Manager).
Vorgehensweise unter Windows Vista oder Windows 7:
- Klicken Sie auf der Taskleiste auf Start und dann auf Systemsteuerung.
- Doppelklicken Sie auf Verwaltung, und doppelklicken Sie dann auf Internetinformationsdienste-Manager (IIS-Manager).
Navigieren Sie im Bereich Verbindungen zu dem Element, für das Sie die Seitenausgabezwischenspeicherung aktivieren möchten. Dabei kann es sich um eine Verbindung, eine Site, eine Anwendung oder ein Verzeichnis handeln.
Scrollen Sie im Bereich Start zu Ausgabezwischenspeicherung, und doppelklicken Sie dann auf Ausgabezwischenspeicherung.
Klicken Sie im Bereich Aktionen auf Hinzufügen....
Geben Sie im Dialogfeld Cacheregel hinzufügen im Feld Dateinamenerweiterung die Dateinamenerweiterung ein, die Sie zwischenspeichern möchten, und wählen Sie anschließend die Option Zwischenspeicherung im Benutzermodus, die Option Zwischenspeicherung im Kernelmodus oder beide Optionen aus.
Wählen Sie die gewünschten Optionen für das Zwischenspeichern aus, und klicken Sie anschließend auf OK.
Konfiguration
Attribute
Keine
Untergeordnete Elemente
Element | Beschreibung |
---|---|
add |
Optionales Element. Fügt der Sammlung von Ausgabezwischenspeicherungsprofilen ein Ausgabezwischenspeicherungsprofil hinzu. |
clear |
Optionales Element. Entfernt alle Verweise auf Ausgabezwischenspeicherungsprofile aus der Sammlung von Ausgabezwischenspeicherungsprofilen. |
remove |
Optionales Element. Entfernt einen Verweis auf ein Ausgabezwischenspeicherungsprofil aus der Sammlung von Ausgabezwischenspeicherungsprofilen. |
Konfigurationsbeispiel
Im folgenden Konfigurationsbeispiel werden die Zwischenspeicherung im Benutzermodus und die Zwischenspeicherung im Kernelmodus aktiviert. Beide sind in IIS 7.0 standardmäßig aktiviert. Außerdem wird das im <profiles>
-Element enthaltene <add>
-Element verwendet, um die Ausgabezwischenspeicherung für Dateien mit der Dateinamenerweiterung „.asp“ zu aktivieren. Des Weiteren wird das policy-Attribut verwendet, um die Seite im Ausgabecache zwischenzuspeichern, bis sie sich ändert. Das Gleiche wird für die Kernelzwischenspeicherung unter Verwendung des kernelCachePolicy-Attributs durchgeführt.
<configuration>
<system.webServer>
<caching enabled="true" enableKernelCache="true">
<profiles>
<add extension=".asp" policy="CacheUntilChange" kernelCachePolicy="CacheUntilChange" />
</profiles>
</caching>
</system.webServer>
</configuration>
Im folgenden Codebeispiel wird die maximale Größe des Ausgabecache auf 1 Gigabyte und die maximale Größe einer Antwort, die im Ausgabecache gespeichert werden kann, auf 512 Kilobytes festgelegt.
<configuration>
<system.webServer>
<caching enabled="true" enableKernelCache="true" maxCacheSize="1000" maxResponseSize="512000"/>
</system.webServer>
</configuration>
Beispielcode
In den folgenden Beispielen wird die Seitenausgabezwischenspeicherung für Dateien mit der Dateinamenerweiterung „.asp“ konfiguriert. Außerdem wird IIS so konfiguriert, dass die Zwischenspeicherung im Benutzermodus und im Kernelmodus erfolgt, bis sich ASP-Dateien ändern.
AppCmd.exe
appcmd.exe set config -section:system.webServer/caching /+"profiles.[extension='asp',policy='CacheUntilChange',kernelCachePolicy='CacheUntilChange']" /commit:apphost
Hinweis
Legen Sie den commit-Parameter auf apphost
fest, wenn Sie „AppCmd.exe“ verwenden, um diese Einstellungen zu konfigurieren. Dadurch werden die Konfigurationseinstellungen auf den entsprechenden Speicherortabschnitt in der Datei „ApplicationHost.config“ festgelegt.
C#
using System;
using System.Text;
using Microsoft.Web.Administration;
internal static class Sample {
private static void Main() {
using(ServerManager serverManager = new ServerManager()) {
Configuration config = serverManager.GetApplicationHostConfiguration();
ConfigurationSection cachingSection = config.GetSection("system.webServer/caching");
ConfigurationElementCollection profilesCollection = cachingSection.GetCollection("profiles");
ConfigurationElement addElement = profilesCollection.CreateElement("add");
addElement["extension"] = @"asp";
addElement["policy"] = @"CacheUntilChange";
addElement["kernelCachePolicy"] = @"CacheUntilChange";
profilesCollection.AddAt(0, addElement);
serverManager.CommitChanges();
}
}
}
VB.NET
Imports System
Imports System.Text
Imports Microsoft.Web.Administration
Module Sample
Sub Main()
Dim serverManager As ServerManager = New ServerManager
Dim config As Configuration = serverManager.GetApplicationHostConfiguration
Dim cachingSection As ConfigurationSection = config.GetSection("system.webServer/caching")
Dim profilesCollection As ConfigurationElementCollection = cachingSection.GetCollection("profiles")
Dim addElement As ConfigurationElement = profilesCollection.CreateElement("add")
addElement("extension") = "asp"
addElement("policy") = "CacheUntilChange"
addElement("kernelCachePolicy") = "CacheUntilChange"
profilesCollection.AddAt(0, addElement)
serverManager.CommitChanges()
End Sub
End Module
JavaScript
var adminManager = new ActiveXObject('Microsoft.ApplicationHost.WritableAdminManager');
adminManager.CommitPath = "MACHINE/WEBROOT/APPHOST";
var cachingSection = adminManager.GetAdminSection("system.webServer/caching", "MACHINE/WEBROOT/APPHOST");
var profilesCollection = cachingSection.ChildElements.Item("profiles").Collection;
var addElement = profilesCollection.CreateNewElement("add");
addElement.Properties.Item("extension").Value = "asp";
addElement.Properties.Item("policy").Value = "CacheUntilChange";
addElement.Properties.Item("kernelCachePolicy").Value = "CacheUntilChange";
profilesCollection.AddElement(addElement, 0);
adminManager.CommitChanges();
VBScript
Set adminManager = createObject("Microsoft.ApplicationHost.WritableAdminManager")
adminManager.CommitPath = "MACHINE/WEBROOT/APPHOST"
Set cachingSection = adminManager.GetAdminSection("system.webServer/caching", "MACHINE/WEBROOT/APPHOST")
Set profilesCollection = cachingSection.ChildElements.Item("profiles").Collection
Set addElement = profilesCollection.CreateNewElement("add")
addElement.Properties.Item("extension").Value = "asp"
addElement.Properties.Item("policy").Value = "CacheUntilChange"
addElement.Properties.Item("kernelCachePolicy").Value = "CacheUntilChange"
profilesCollection.AddElement addElement, 0
adminManager.CommitChanges()