Mobiler Cache: Desktop-Ansicht wird für mobile Geräte angezeigt

Wenn deine Website auf einem NGINX-Server gehostet ist und du die Mobile-Cache-Option in WP Rocket aktiviert hast (Cache-Datei für Besucher von mobilen Geräten anlegen), wirst du vielleicht das folgende Verhalten feststellen:

  • Wenn du eine Seite zuerst von einem Desktop-Gerät aus besuchst, wird die gecachte Desktop-Version hinterher auch auf mobilen Geräten angezeigt—unkorrekter Weise, denn WP Rocket sollte ja eine spezielle Cache-Datei für mobile Geräte generieren.
  • Wenn du eine Seite zuerst von einem mobilen Gerät aus besuchst, wird die korrekte mobile Version gecacht und für alle nachfolgenden Besuche von mobilen Geräten ausgeliefert, während Desktop-Geräte die korrekte Desktop-Version sehen.

Die Ursache dieses Verhaltens besteht darin, dass WP Rocket auf NGINX nicht automatisch bestimmte Rewrite-Regeln entfernen kann, um mobile Geräte zu erkennen, wie es das auf einem Apache-Server täte.

Zur Lösung des Problems musst du deine NGINX-Konfigurationsdatei bearbeiten.

Vorausgesetzt du benutzt die  empfohlene NGINX-Konfiguration für WP Rocket, kannst du einfach den Wert in Zeile 23 Konfigurationsdatei auf 0 setzen (auch wenn es davor heisst „Do not alter theses values“):

# Do not alter theses values
#
set $rocket_bypass 0;    # Should NGINX bypass WordPress and call cache file directly?

Dies ist im Grunde das Gleiche, was WP Rocket für Apache tut, nur eben für NGINX übersetzt.

Tipp: Du kannst eine einfache Chrome-Erweiterung nutzen um festzustellen, ob deine Website auf einem NGINX-Server gehostet wird.

Chrome-Erweiterung HTTP Headers zeigt Header-Info an