2010-08-25 11 views
6

Ich frage mich nur, was meinen xap jeden halben Tag (ca.) ablaufen lassen würde. Was ich meine ist, dass ein Benutzer am Morgen die Website besucht und eine Kopie des xap herunterlädt, wenn der Benutzer am nächsten Tag auf die Website zurückkehrt und die Website eine weitere Kopie des xap herunterlädt.XAP läuft nach einem halben Tag ab?

Ich würde hoffen, dass der einzige Grund, dass ein Benutzer eine neue Kopie des XAP herunterladen müsste, wäre, wenn sie ihren Browser-Cache gelöscht oder eine neue Kopie auf dem Server abgelegt haben.

Irgendwelche Ideen auf was wäre das Problem und beheben?

Ich lief fiddler auf dem XAP-Download und erhielt die folgenden Zeilen aus dem Cache-Tab des XAP-Download-Eintrags in Fiddler.

HTTP/200-Antworten können standardmäßig zwischengespeichert werden, sofern keine Expires-, Pragma- oder Cache-Control-Header vorhanden sind und Caching nicht zulässig ist.


HTTP/1.1 ETAG-Header vorhanden ist: "2ad1d6bfdd43cb1: 0" HTTP Last-Modified-Header vorhanden ist: Di, 24. August 2010 22.43.19 GMT

keine explizite Information HTTP Expiration war unter der Voraussetzung. Die meisten Browser verwenden heuristische Ablaufrichtlinien: 10% des Delta zwischen Last-Modified und Datum ist '02: 53: 34 ', so dass diese Antwort heuristisch abläuft 26/08/2010 4:39:26 PM.


Wäre das das Problem? Wo setze ich expliziten HTTP-Ablauf?

+0

Q. Ist der IIS-Server unter Ihrer Kontrolle? Sind Sie in der Lage, mögliche Ursachen zu untersuchen, wenn diese Server-bezogen sind? –

+0

Q. Zweite Frage ... geschieht dies ungefähr nach Mitternacht und nach 12 Mittag oder kurz nach einer Pause von ca. 12 Stunden? Sie können dies überprüfen, indem Sie zwischen 9 und 22 Uhr einen Serverwechsel vornehmen und sehen, wann das XAP erneut heruntergeladen wird. –

Antwort

2

Das erste, was zu tun ist: -

  • eine Kopie Fiddler installieren.
  • Löschen Sie Ihre temporären Internetdateien.
  • Führen Sie Fiddler.
  • Besuchen Sie Ihre Host-Webseite.
  • Finden Sie die HTTP-Sitzung in Fiddler, die den Xap-Download darstellt
  • Fügen Sie die Raw-Antwort-Header zu Ihrer Frage oben.

Dies wird eine sehr wichtige Reihe von Hinweisen auf das eigentliche Problem bieten.

Was passiert beim Aktualisieren? Sehen Sie, dass die zweite XAP-HTTP-Sitzung eine Status 304-Antwort zurückgibt? Wenn Sie eine 200 bekommen, fügen Sie die rohen Request Header für diesen zweiten Versuch und ihre rohen Antwortheader auf Ihre Frage.

Wenn Sie eine 304 erhalten, lassen Sie sie für die entsprechende Zeit und versuchen Sie es erneut, gibt es noch einen Status 304? Wenn nicht, mach dasselbe wie oben.

Diese Daten geben uns viele Informationen zur Diagnose.

0

Ich denke, was HiTech Magic ansprach war, dass Sie diese Einstellung in IIS anpassen können. Von dem, was Fiddler gesagt hat, scheint es, als hätte Ihr IIS kein Ablaufdatum für den Inhalt, was meiner Meinung nach der Standard ist.

hier ist, wie es in IIS zu tun 6: http://www.microsoft.com/technet/prodtechnol/WindowsServer2003/Library/IIS/0fc16fe7-be45-4033-a5aa-d7fda3c993ff.mspx?mfr=true hier ist, wie es in IIS zu tun 7: h'ttp: //technet.microsoft.com/en-us/library/cc770661 (WS.10) .aspx

0

Wenn Sie ASP.Net verwenden (können Sie Ihren Beitrag bearbeiten, um uns mitzuteilen, was Ihr Back-End ist?), versuchen Sie es mit . Es gibt some gotchas, tho.