Autor Thema: Web-Aktualität  (Gelesen 2620 mal)

Offline Andreas Kramer

  • Frischling
  • *
  • Beiträge: 12
Web-Aktualität
« am: 29.03.05 - 18:01:28 »
Hallo Community

Ich habe eine Datenbank erstellt, welche eigentlich aussschließlich über das Web benutzt wird.

Das Problem ist nun folgendes:

Wenn ich etwas in der Datenbank ändere: hier z.b. eine Kundenadresse. Muss ich jedes mal sobald ich eine Seite ein neuen view oder was auch immer öffne.  Vorher auf "Refresh" im Browser drücken. Da sonst noch der alte Inhalt angezeigt wird.

Gibt es eine Möglichkeit den Browser über Notes dahin zubewegen, so dass er sich immer selbst den aktuellen Content holt?


Besten Dank

Andreas

Offline m3

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.102
  • Geschlecht: Männlich
  • Non ex transverso sed deorsum!
    • leyrers online pamphlet
Re: Web-Aktualität
« Antwort #1 am: 29.03.05 - 18:12:55 »
<META HTTP-EQUIV="CACHE-CONTROL" CONTENT="NO-CACHE">
und/oder die Seite in der Vergangenheit "expiren" lassen:
<meta http-equiv="expires" content="thu, 16 DEC 1999 00:04:00 PST">

Eine etwas "korrektere" Satzzeichensetzung sowie Groß/Kleinschreibung Deines Textes würde die Hilfestellung vereinfachen. Danke!
HTH
m³ aka. Martin -- leyrers online pamphlet | LEYON - All things Lotus (IBM Collaborations Solutions)

All programs evolve until they can send email.
Except Microsoft Exchange.
    - Memorable Quotes from Alt.Sysadmin.Recovery

"Lotus Notes ist wie ein Badezimmer, geht ohne Kacheln, aber nicht so gut." -- Peter Klett

"If there isn't at least a handful of solutions for any given problem, it isn't IBM"™ - @notessensai

Offline maxg

  • Aktives Mitglied
  • ***
  • Beiträge: 112
  • Geschlecht: Männlich
  • Ich liebe dieses Forum! wirklich!
Re: Web-Aktualität
« Antwort #2 am: 29.03.05 - 18:14:59 »
über ein <META http-equiv="expires" content"0"> sollte es z.b. gehen

Max

 >:(zu langsam gewesen ;)
Es ist nicht Deine Schuld, dass die Welt ist, wie sie ist.
Es wär nur Deine Schuld, wenn Sie so bleibt.

Offline m3

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.102
  • Geschlecht: Männlich
  • Non ex transverso sed deorsum!
    • leyrers online pamphlet
Re: Web-Aktualität
« Antwort #3 am: 29.03.05 - 18:19:43 »
<META http-equiv="expires" content"0">
Sorry, das ist nicht korrekt/richtig.
Laut RFC 2068 MÜSSEN alle Datums/Zeitwerte in dem Format angegeben werden, das in der RFC 1123 spezifiziert wird.

"0" ist also kein gültiger Wert und sollte von allen Browsern ignoriert werden. Korrekt wäre etwa content="Sat, 01 Dec 2001 00:00:00 GMT"
HTH
m³ aka. Martin -- leyrers online pamphlet | LEYON - All things Lotus (IBM Collaborations Solutions)

All programs evolve until they can send email.
Except Microsoft Exchange.
    - Memorable Quotes from Alt.Sysadmin.Recovery

"Lotus Notes ist wie ein Badezimmer, geht ohne Kacheln, aber nicht so gut." -- Peter Klett

"If there isn't at least a handful of solutions for any given problem, it isn't IBM"™ - @notessensai

Marinero Atlántico

  • Gast
Re: Web-Aktualität
« Antwort #4 am: 29.03.05 - 18:39:00 »
Das ist keine triviale Frage und teilweise auch noch browserabhängig (s. Link bzgl Diskussionen zu IE 5)

Jedenfalls soll man diese 3 Headerwerte so setzen:
Zitat
// als JSP
<%
response.setHeader("Cache-Control","no-cache"); //HTTP 1.1
response.setHeader("Pragma","no-cache"); //HTTP 1.0
response.setDateHeader ("Expires", 0); //prevents caching at the proxy server
%>
Code
 <META HTTP-EQUIV="CACHE-CONTROL" CONTENT="NO-CACHE"> <!-- HTTP 1.1 -->
 <META HTTP-EQUIV="Pragma" CONTENT="NO-CACHE"> <!-- HTTP 1.1 -->
<META HTTP-EQUIV="Expires" CONTENT=0> <!-- HTTP 1.1 -->
@m3. Bist du sicher, dass man für den Expires Wert nicht u.U. doch vielleicht milisekunden seit irgendein Tag im Jahr 1970 nehmen kann, oder so etwas die Richtung. Jedenfalls wird das seit Jahren so gemacht.
Wichtig ist wohl, dass alle 3 Meta-Tags gesetzt werden. Der eine ist für HTTP 1.0, der andere für HTTP 1.1 und der 3. dafür, um Proxy-Server davon zu überzeugen, nicht zu cachen.

hmm. wobei, dass sieht irgendwie moderner aus:
Code
/ Set to expire far in the past.
  res.setHeader("Expires", "Sat, 6 May 1995 12:00:00 GMT");

  // Set standard HTTP/1.1 no-cache headers.
  res.setHeader("Cache-Control", "no-store, no-cache, must-revalidate");

  // Set IE extended HTTP/1.1 no-cache headers (use addHeader).
  res.addHeader("Cache-Control", "post-check=0, pre-check=0");

  // Set standard HTTP/1.0 no-cache header.
  res.setHeader("Pragma", "no-cache");

The Expires header indicates that the page expired long ago, thus making the page a poor cache candidate. The first Cache-Control header sets three directives that each disable caching. One tells caches not to store this content, another not to use the content to satisfy another request, and the last to always revalidate the content on a later request if it's expired (which, conveniently, it always is). One directive might be fine, but in magic spells and on the Web, it's always good to play things safe.

The second Cache-Control header sets two caching "extensions" supported by Microsoft Internet Explorer. Without getting into the details on nonstandard directives, suffice to say that setting pre-check and post-check to 0 indicates that the content should always be refetched. Because it's adding another value to the Cache-Control header, we use addHeader( ), introduced in Servlet API 2.2. For servlet containers supporting earlier versions, you can combine the two calls onto one line.

The last header, Pragma, is defined in HTTP/1.0 and supported by some caches that don't understand Cache-Control. Put these headers together, and you have a potent mix of directives to disable caching. Some programmers also add a getLastModified( ) method that returns a time in the past. 
Vielleicht hat m3 doch Recht?

Jedenfalls manchmal nicht trivial.
Hatte das aber vor Jahren schon mit den 3 Tags gemacht und das lief eigentlich. Hat sich auch nie jemand beschwert.
Hier ist jedenfalls eine längere Diskussion:
http://www.jguru.com/faq/view.jsp?EID=377&page=2





Offline m3

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.102
  • Geschlecht: Männlich
  • Non ex transverso sed deorsum!
    • leyrers online pamphlet
Re: Web-Aktualität
« Antwort #5 am: 29.03.05 - 18:42:51 »
Ich bin schon der Meinung, dass "0" nicht korrekt ist.
Zitat
The format is an absolute date and time as defined by HTTP-date in
   section 3.3; it MUST be in RFC1123-date format:

         Expires = "Expires" ":" HTTP-date
Aber wer weiss, wie das die im IE implementieren.
HTH
m³ aka. Martin -- leyrers online pamphlet | LEYON - All things Lotus (IBM Collaborations Solutions)

All programs evolve until they can send email.
Except Microsoft Exchange.
    - Memorable Quotes from Alt.Sysadmin.Recovery

"Lotus Notes ist wie ein Badezimmer, geht ohne Kacheln, aber nicht so gut." -- Peter Klett

"If there isn't at least a handful of solutions for any given problem, it isn't IBM"™ - @notessensai

Offline maxg

  • Aktives Mitglied
  • ***
  • Beiträge: 112
  • Geschlecht: Männlich
  • Ich liebe dieses Forum! wirklich!
Re: Web-Aktualität
« Antwort #6 am: 29.03.05 - 18:47:13 »
also ich habe das vorhin so aus dem Gedächtnis geschrieben, weil ich der Meinung war, dass der Wert eine Zeitdauer in Sekunden darstellt. Ich meine mich zu erinnern, dass ich den vor einigen Jahren auch erfolgreich so eingesetzt habe.

Jetzt habe ich nochmal eben bei SELFHTML nachgeguckt und dort steht:

Zitat
Mit <meta http-equiv="expires" content="0"> veranlassen Sie, dass diese HTML-Datei in jedem Fall von der Originaladresse geladen wird (expires = fällig werden).

Bei content können Sie anstelle der 0 in diesem Zusammenhang aber auch ein bestimmtes Datum und eine bestimmte Uhrzeit angeben. Dadurch bewirken Sie, dass die Daten dieser Datei nach dem angegebenen Zeitpunkt auf jeden Fall vom Original-Server geladen werden sollen. Datum und Uhrzeit müssen Sie im internationalen Format angeben. Beispiel: content="Sat, 15 Dec 2001 12:00:00 GMT". Notieren Sie den Zeitpunkt so wie im Beispiel mit allen Leerzeichen, Doppelpunkten zwischen Stunden, Minuten und Sekunden sowie der Angabe GMT am Ende. Als Wochentagnamen sind erlaubt Mon (Montag), Tue (Dienstag), Wed (Mittwoch), Thu (Donnerstag), Fri (Freitag), Sat (Samstag) und Sun (Sonntag). Als Monatsnamen sind erlaubt Jan (Januar), Feb (Februar), Mar (März), Apr (April), May (Mai), Jun (Juni), Jul (Juli), Aug (August), Sep (September), Oct (Oktober), Nov (November) und Dec (Dezember).

Anstelle der 0 können Sie auch eine Zahl angeben. Diese Zahl bedeutet dann die Anzahl Sekunden, nach deren Ablauf der Web-Browser eine Datei, die er im Cache hat, auf jeden Fall wieder vom Server lädt. Mit content="43200" stellen Sie beispielsweise einen Wert von 12 Stunden ein.

Quelle: http://de.selfhtml.org/html/kopfdaten/meta.htm#laden

Aber ich lasse mich gerne eines besseren belehren.

Max
Es ist nicht Deine Schuld, dass die Welt ist, wie sie ist.
Es wär nur Deine Schuld, wenn Sie so bleibt.

Marinero Atlántico

  • Gast
Re: Web-Aktualität
« Antwort #7 am: 29.03.05 - 18:59:19 »
Es ist jedenfalls ein Umfeld mit
- unterschiedlichen HTTP Spezifikationen (HTTP1.1, 1.0)
- fehlerhaften Implementierungen im Browsern
Hier sind jetzt genug Vorschläge versammelt und man sollte das imho eben einfach testen.

Offline m3

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.102
  • Geschlecht: Männlich
  • Non ex transverso sed deorsum!
    • leyrers online pamphlet
Re: Web-Aktualität
« Antwort #8 am: 29.03.05 - 18:59:29 »
Hmmm.
Who do you trust?

Den bemühten Burschen und Mädls von SelfHTML, die von den ewig gleichen (falschen) Quellen abschreiben, oder den offiziellen Spezifikationen des W3C und der IETF?

Das W3C ist da recht konkret:
http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.3

... etwas später ...


Ahhhh: Da verlässts ich wer auf folgenden Satz in der Spez.:
Zitat
HTTP/1.1 clients and caches MUST treat other invalid date formats, especially including the value "0", as in the past (i.e., "already expired").
http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.21

OK, I stand corrected. :)
Wieder was dazu gelernt.
HTH
m³ aka. Martin -- leyrers online pamphlet | LEYON - All things Lotus (IBM Collaborations Solutions)

All programs evolve until they can send email.
Except Microsoft Exchange.
    - Memorable Quotes from Alt.Sysadmin.Recovery

"Lotus Notes ist wie ein Badezimmer, geht ohne Kacheln, aber nicht so gut." -- Peter Klett

"If there isn't at least a handful of solutions for any given problem, it isn't IBM"™ - @notessensai

Marinero Atlántico

  • Gast
Re: Web-Aktualität
« Antwort #9 am: 29.03.05 - 19:08:19 »
Hmmm.
Who do you trust?

Den bemühten Burschen und Mädls von SelfHTML, die von den ewig gleichen (falschen) Quellen abschreiben, oder den offiziellen Spezifikationen des W3C und der IETF?
Keinem von beiden, sondern google + eigenen Tests mit verschiedenen Browsern.  ;D

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz