Projekt-Anfragen: Tel: 07022/9319004 info@CodeDocu.de Software Entwicklung in C# WPF Asp.Net Core Vba Excel Word SQL-Server EF Linq, UWP Net
#

Google meldet mir unter der Google Developers Site, dass ich für meine Seite das Caching einsetzen soll.

Diesen hatte ich bisher nicht verwendet oder eingestellt, obwohl ich sehr wohl schon das sehr effektive Server.Caching verwende.

Hier die Meldung von Google

Behebung erforderlich:

Browser-Caching nutzen

Das Festlegen eines Ablaufdatums oder eines Höchstalters in den HTTP-Headern für statische Ressourcen weist den Browser an, zuvor heruntergeladene Ressourcen über die lokale Festplatte anstatt über das Netzwerk zu laden.

Nutzen Sie Browser-Caching für die folgenden cachefähigen Ressourcen:

Die Webseite zur Information von Browser Caching findet man unter:

https://developers.google.com/speed/docs/insights/LeverageBrowserCaching

  • http://www.microsoft-programmierer.de/Content/Site.css (Ablaufdatum nicht festgelegt)


Caching wird in MSDN beschrieben unter:

https://msdn.microsoft.com/de-de/library/bb979285.aspx


Zunächst einmal die Möglichkeit den Header einer Ausgabe .aspx Datei verändern.
Im SiteMaster
Hier schreibt man zum Beispiel in den SiteMaster oder in definierte Anzeigeseiten folgende Zeile:

<%@ OutputCache DiskCacheable="true" Location="Any" Duration="60" NoStore="false" VaryByParam="id" CacheProfile="myCache" %>

<%@ Master Language="VB" AutoEventWireup="true" CodeBehind="Site.Master.vb" Inherits="myNamespace.SiteMaster" %>

<%@ Register Assembly="Telerik.Web.UI" Namespace="Telerik.Web.UI" TagPrefix="telerik" %>

<%@ OutputCache DiskCacheable="true" Location="Any" Duration="60" NoStore="false" VaryByParam="id" CacheProfile="myCache" %>

<!DOCTYPE html>

<html lang="de" xmlns:og="http://opengraphprotocol.org/schema/" xmlns:fb="http://www.facebook.com/2008/fbml">

<head runat="server">..

..



Wenn man CacheProfile angibt dann muss man diesen auch in der Config definieren. Ansonsten den Wert einfach weglassen

CacheProfile

Die Cache Einstellungen werden aus einem benannten Profil (Profile) geladen. Profiles können in der Datei web.config deklariert werden.


In den Ausgabe-Detailseiten :
Wenn man spezielle Detailseiten zur Anzeige hat, oder dynamische AnzeigeListen, dann ist es natürlich besser man legt die OutputCache Anweisung nur hier an.
Denn man muß in diesem Zug ja auch die Eingabeseiten ohne Cache lassen.

Der Parameter VaryByParam gibt an, über welchen URL-Wert die Seite gleich gehalten werden soll oder anders gesagt, was ist die ID einer Seite, worin sie sich unterscheidet.


Deshalb muß ich meiner Details.aspx Anzeigeseite für die einzelnen Berichte im Header folgendes einsetzen und bei Google verifizieren

<%@ OutputCache DiskCacheable="true" Location="Any" Duration="3600" NoStore="false" VaryByParam="d" %>



Vor der Anwendung:

Wunderbar
100/ 100 : mal bitte genau lesen :

Serverfehler in der Anwendung /.

Parserfehler

Beschreibung: Fehler beim Verarbeiten einer Resource, die für diese Anforderung erforderlich ist. Überprüfen Sie folgende Fehlerinformationen und ändern Sie die Quelldatei entsprechend.

Parserfehlermeldung: Das diskcacheable-Attribut wird von der outputcache-Direktive auf einer Seite nicht unterstützt.

Quellfehler:

Zeile 1: <%@ Page Title="Default" Language="VB" MasterPageFile="~/Site.Master" AutoEventWireup="true" CodeBehind="Details.aspx.vb" Inherits="myNamespace._Details" %>

Zeile 2: <%@ Register Assembly="Telerik.Web.UI" Namespace="Telerik.Web.UI" TagPrefix="telerik" %>

Zeile 3: <%@ OutputCache DiskCacheable="true" Location="Any" Duration="3600" NoStore="false" VaryByParam="d" %>

Zeile 4:

Zeile 5:

Quelldatei: /Details.aspx Zeile: 3

Versionsinformationen: Microsoft .NET Framework-Version:4.0.30319; ASP.NET-Version:4.0.30319.17929

Fehler: die DiskCacheable="true" darf nicht eingetragen werden


Bei Anwendung der Direktive im axpx Header OutputCache verändert sich die Auswertung bei PageSpeed Insights nicht

<%@ OutputCache Location="Any" Duration="3600" VaryByParam="d" NoStore="true" %>

Nach wie vor 71 / 100

<%@ Page Title="Default" Language="VB" MasterPageFile="~/Site.Master" AutoEventWireup="true" CodeBehind="Details.aspx.vb" Inherits="myNamespace._Details" %>

<%@ Register Assembly="Telerik.Web.UI" Namespace="Telerik.Web.UI" TagPrefix="telerik" %>

<%@ OutputCache Location="Any" Duration="3600" VaryByParam="d" NoStore="true" %>



Weitere Änderungen:..

Mobile
»
offen: Browser-Caching nutzen: Festlegen eines Ablaufdatums Teil1

.

Jobs, Projekte, Angebote für Freiberufler, Selbstständig an Info@CodeDocu.de