Google Analytics · 1 min read · Jan 04, 2026
Ускорьте Google Analytics
Ускорьте Google Analytics
Этот метод использует crontab для выполнения оболочного скрипта, который загружает обновленный файл urchin.js каждые 24 часа и сохраняет его в директории ваших локальных сайтов. Вот и все!
Проблема возникает, когда google-analytics.com/urchin.js запрашивается миллиардами веб-пользователей по всему миру одновременно, это может привести к тому, что страницы вашего сайта загружаются с черепашьей скоростью. Особенно если вы используете WordPress или аналогичную CMS.
Официальная позиция Google по локальному хостингу urchin.js
Настройте crontab, введя
crontab -eв командной строке в стиле unix (ssh), затем добавьте:
11 12 * * * /home/user/websites/urch.sh >/dev/null 2>&1Пример оболочного скрипта:
#!/bin/sh
rm /home/user/websites/askapache.com/z/j/urchin.js
cd /home/user/websites/askapache.com/z/j/
wget http://www.google-analytics.com/urchin.js
chmod 644 /home/user/websites/askapache.com/z/j/urchin.js
cd ${OLDPWD}
exit 0;Есть 2 довольно серьезные вещи, которые вы достигаете, хостя urchin.js локально:
- Вы включаете постоянные соединения
- Вы гарантируете, что правильный заголовок 304 Not Modified отправляется вашим посетителям сайта вместо резервирования всего файла.
Одна из проблем с удаленно хостингом urchin.js заключается в том, что сервер, с которого подается файл urchin.js, не позволяет постоянные соединения.
Еще одна большая причина заключается в том, что, хотя заголовки Cache-Control правильно устанавливаются google-analytics при подаче urchin.js, вместо того чтобы правильно отвечать на заголовок If-Modified-Since с заголовком 304 Not Modified, указывая, что файл не был изменен, google-analytics вместо этого возвращает весь файл urchin.js снова, тем самым делая cache-control недействительным.
Вы можете четко увидеть эту проблему с помощью захвата wireshark.
GET /urchin.js HTTP/1.1
Accept: */*
Referer: http://www.askapache.com
Accept-Language: en-us
UA-CPU: x86
Accept-Encoding: gzip, deflate
If-Modified-Since: Tue, 20 Mar 2007 22:49:11 GMT
User-Agent: Mozilla/4.0 (совместимо; MSIE 7.0; Windows NT 5.1; SU 2.011; .NET CLR 1.1.4322; .NET CLR 2.0.50727; Alexa Toolbar; .NET CLR 3.0.04506.30)
Host: www.google-analytics.com
Connection: Keep-AliveHTTP/1.1 200 OK
Cache-Control: max-age=604800, public
Content-Type: text/javascript
Last-Modified: Tue, 20 Mar 2007 22:54:02 GMT
Content-Encoding: gzip
Server: ucfe
Content-Length: 5675
Date: Sat, 24 Mar 2007 18:23:12 GMTПримечание: Вам потребуется схема кэширования на вашем сервере для достижения оптимальных результатов.
Довольно крутой способ!
Get new posts in your inbox
No spam. Unsubscribe anytime.