Es gibt ja für jede Lösung ein Problem, so natürlich auch für mögliche Änderungen an ga.js, wenn man die Datei, um sie gzip-komprimiert auszuliefern, selber hosten will.
Ein bisschen Shell-Scripting sorgt dafür, dass die Datei von Google geladen und an die richtige Stelle kopiert wird:
#!/bin/sh # TMP DIRECTORY MYTMP=/tmp # SAVE ga.js HERE INSTALL_IN=/htdocs/domain.de/javascript/ # RESOURCE URL GOOGLE_GA_URL=http://www.google-analytics.com/ga.js # USER-AGENT UA="Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.3) Gecko/20070309 Firefox/2.0.0.3" # CD TO TMP DIRECTORY cd $MYTMP # DOWNLOAD THE FILE curl --header "Pragma:" -f -s -A "${UA}" -m 1800 --retry 15 --retry-delay 15 --max-redirs 8 -O $GOOGLE_GA_URL # GIVE FILE CORRECT PERMISSIONS chmod 644 $MYTMP/ga.js # COPY FILE TO SITE DIRECTORY cp -r $MYTMP/ga.js $INSTALL_IN # RETURN TO OLDPWD cd $OLDPWD exit 0; |
Als Cronjob ausgeführt wird damit ab sofort regelmäßig die aktuelle Version der ga.js von Google geholt.
Hält man sich darüber hinaus an die Empfehlung von Google und versieht seine statischen Dateien mit weit in der Zukunft liegenden Expire-Headern sollte man bei der Gelegenheit dann auch gleich sicherstellen, dass die Datei einen deutlich niedrigeren Expire-Header bekommt, sonst kann man sich die ganze Aktion auch gleich sparen:
<Files ga.js> ExpiresByType application/javascript "access plus 1 week" </Files> |