Man staunt nicht schlecht, wenn man aktuelle Dokumente in eine Sharepoint Bibliothek hochlädt und diese nicht aktualisiert werden.
Da muss man schon etwas tiefer eingreifen.
Lädt man ein überarbeitetes Dokument in eine Bibliothek hoch, geht man erstmal davon aus, dass dieses nichts besonderes ist. Das neue Dokument steht ja nun bereit.
Um so verwunderlicher ist es dann, wenn man dann plötzlich informiert wird, dass dem nicht so ist. Öffnet man das Dokument aus dem Browser, wird tatsächlich der veraltete Inhalt angezeigt. Macht man einen Download des Dokuments, so handelt es sich dabei um das aktuelle mit neuem Inhalt. Jetzt wird es komisch.
Man hat natürlich erstmal den Browsercache im Verdacht. Muss nach einem Reset des selbigen feststellen, dass dieses am Verhalten nichts ändert.
Aber es geht noch sonderbarer
Benennt man das Dokument/die Datei direkt im Browser oder aber vor dem Upload um, passt das Ganze. Immer der aktuelle Inhalt. Benennt man dann die zuvor hochgeladene Datei dann im Browser um auf den bisherigen Namen, wieder der unerwünschte Effekt.
Jetzt ist guter Rat teuer.
Cache ist es nicht. Also versucht man sich, wenn aktiviert, an der Versionierung. Aber auch das führt zu keiner Veränderung.
So geschehen, bei der Aktualisierung eines StyleSheet Files, welches Seitecollection weit geladen wird.
Der Übeltäter
Der eigentliche und zunächst einmal erstmal gar nicht bedachte Übeltäter ist der BLOB Cache (Binary Large OBject).
Der Blob Cache dient der Zwischenspeicherung von großen Dateien/Dateitypen in SharePoint on premise Umgebungen.
Dieses aber komplett zu deaktivieren ist eher kontraproduktiv.
Das geht auf die Performance.
Aber er lässt sich anpassen.
In der web.config Datei der WebApplication kann die entsprechende Anpassung vorgenommen werden.
Auf allen Frontend Servern ist die web.config so anzupassen, dass css und templatedcss Files nicht im Cache aufgenommen werden.
Die korrekte Blockkonfiguration sieht dann wie folgt aus:
<BlobCache location="D:\<Dein Blob-Cache-Pfad>\" path="\.(gif|jpg|jpeg|jpe|jfif|bmp|dib|tif|tiff|themedbmp|themedgif|themedjpg|themedpng|ico|png|wdp|hdp|js|asf|avi|flv|m4v|mov|mp3|mp4|mpeg|mpg|rm|rmvb|wma|wmv|ogg|ogv|oga|webm|xap)$" maxSize="10" enabled="true" />
Im Parameter path= ist entsprechend css und templatedcss zu entfernen.
Wichtig: Der Inhalt (nur der Inhalt – nicht das Verzeichnis selbst) des unter location genannten Blob-Caches Verzeichnisses ist zu löschen!
Idealerweise stoppt man vor der Löschung einmal den IIS (Wartungsfenster!)
Das Problem ist nun erledigt.
Treten entsprechende Effekte bei nicht im Blob-Cache Block genannten Files auf, so ist der Fehler anderweitig zu ermitteln.
Es ist schon vorgekommen, dass hier bei vorhandener, lokaler Office Online Server Installation der Cache geleert oder aber das WOPI-Binding werden muss. Aber auch defekte, lokale Client-Benutzerprofile können diesen Effekt bei klassischen Office Dokumenten hervorrufen.
Abschließende Hinweise
Anpassungen und Fehlkonfigurationen an der web.config können zum Ausfall der gesamten SharePoint Applikation führen. Man sollte wissen was man macht.
Handelt es sich um eine Multinode Farm, so ist die genannte Anpassung an der Blob-Cache Konfiguration auf allen Servern manuell durchzuführen.