Saya sedang berusaha mencapai 100/100 di PageSpeed dan saya hampir sampai. Saya mencoba menemukan solusi yang bagus untuk menembolok Google Analytics.
Ini pesan yang saya dapat:
Leverage peramban caching Menetapkan tanggal kedaluwarsa atau usia maksimum di header HTTP untuk sumber daya statis memerintahkan peramban untuk memuat sumber daya yang diunduh sebelumnya dari disk lokal daripada melalui jaringan. Leverage peramban cache untuk sumber daya yang bisa di-cache berikut: http://www.google-analytics.com/analytics.js (2 jam)
Satu-satunya solusi yang saya temukan adalah dari 2012 dan saya pikir itu bukan solusi yang baik. Pada dasarnya Anda menyalin kode GA dan menyimpannya sendiri. Anda kemudian menjalankan tugas cron untuk mengecek ulang Google sekali sehari untuk mengambil kode GA terbaru dan menggantinya.
http://diywpblog.com/leverage-browser-cache-optimize-google-analytics/
Apa lagi yang bisa saya lakukan untuk mencapai 100/100 sementara juga menggunakan Google Analytics?
Terima kasih.
sumber
Jawaban:
Nah, jika Google menipu Anda, Anda dapat menipu Google kembali:
Ini adalah agen pengguna untuk pageSpeed:
Anda dapat memasukkan persyaratan untuk menghindari penyajian skrip analitik ke PageSpeed:
Jelas, itu tidak akan membuat perbaikan nyata, tetapi jika satu-satunya masalah Anda mendapatkan skor 100/100 ini akan melakukannya.
sumber
if(navigator.userAgent.indexOf("Speed Insights") == -1) { /* analytics here */ }
{ }
dalam contoh saya, bersama dengan JS lain yang digunakan GA (sepertiga('create', 'UA-XXXXX-Y', 'auto'); ga('send', 'pageview');
atau apa pun)Ada subset dari perpustakaan js Google Analytics yang disebut ga-lite yang dapat Anda cache semau Anda.
Perpustakaan menggunakan API REST publik Google Analytics untuk mengirim data pelacakan pengguna ke Google. Anda dapat membaca lebih banyak dari posting blog tentang ga-lite .
Penafian: Saya penulis perpustakaan ini. Saya berjuang dengan masalah khusus ini dan hasil terbaik yang saya temukan adalah menerapkan solusi ini.
sumber
Berikut ini adalah solusi yang sangat sederhana menggunakan JS, untuk pelacakan GA dasar, yang juga akan berfungsi untuk cache tepi / proksi (ini dikonversi dari komentar):
Catatan: Ini adalah skrip GA default. Anda mungkin memiliki
ga()
panggilan lain , dan jika demikian, Anda harus selalu memeriksa agen pengguna sebelum meneleponga()
, jika tidak maka kesalahan akan keluar.sumber
ga
sebagaiga = function(){};
sebelum cuplikan gagal secara diam-diam ketika dijalankanga();
sehingga Anda tidak perlu memeriksa keberadaan fungsi ini di mana pun dalam kode Anda.Saya tidak akan khawatir tentang itu. Jangan letakkan di server Anda sendiri, sepertinya ini adalah masalah dengan Google, tapi sebagus itu. Menempatkan file di server Anda sendiri akan menciptakan banyak masalah baru.
Mereka mungkin membutuhkan file untuk dipanggil setiap kali daripada mendapatkannya dari cache klien, karena dengan begitu Anda tidak akan menghitung kunjungan.
Jika Anda memiliki masalah untuk merasa baik-baik saja dengan itu, jalankan URL Google Insight pada Google Insight itu sendiri, tertawa, santai dan melanjutkan pekerjaan Anda.
sumber
Di Google docs, mereka telah mengidentifikasi
pagespeed
filter yang akan memuat skrip secara asinkron:Anda dapat menemukan dokumentasi di sini: https://developers.google.com/speed/pagespeed/module/filter-make-google-analytics-async
Satu hal yang perlu diperhatikan adalah filter tersebut dianggap berisiko tinggi. Dari dokumen:
sumber
varvy.com ( 100/100 wawasan kecepatan halaman Google ) memuat kode google analitycs hanya jika pengguna membuat gulir halaman:
sumber
Anda dapat mencoba meng-host analytics.js secara lokal dan memperbarui kontennya dengan skrip cache atau secara manual.
File js diperbarui hanya beberapa kali setahun dan jika Anda tidak memerlukan fitur pelacakan baru perbarui secara manual.
https://developers.google.com/analytics/devguides/collection/analyticsjs/changelog
sumber
menyimpan localy analytics.js, tetapi tidak direkomendasikan oleh google: https://support.google.com/analytics/answer/1032389?hl=id
tidak disarankan karena google dapat memperbarui skrip saat mereka inginkan, jadi lakukan saja skrip yang mengunduh analitik javascript setiap minggu dan Anda tidak akan mengalami masalah!
Ngomong-ngomong, solusi ini mencegah adblock memblokir skrip google analytics
sumber
Anda dapat mem-proksi skrip analitik google melalui server Anda sendiri, menyimpannya secara lokal dan memperbarui file secara otomatis setiap jam untuk memastikan itu selalu versi terbaru dari google.
Saya telah melakukan ini di beberapa situs sekarang dan semuanya bekerja dengan baik.
Rute Proxy Google Analytics di NodeJS / MEAN Stack
Ini adalah bagaimana saya menerapkannya di blog saya yang dibangun dengan tumpukan MEAN.
Metode Tindakan Proxy Google Analytics di ASP.NET MVC
Ini adalah bagaimana saya mengimplementasikannya di situs lain yang dibangun dengan ASP.NET MVC.
Ini adalah CompressAttribute yang digunakan oleh ProxyController MVC untuk kompresi Gzip
Skrip Google Analytics yang diperbarui
Di sisi klien saya menambahkan jalur analitik dengan tanggal saat ini hingga jam sehingga browser tidak akan menggunakan versi cache lebih dari satu jam.
sumber
Untuk Nginx:
Kemudian ubah jalur https://www.google-analytics.com/analytics.js ke https://yoursite.com/analytics.js
sumber
PHP
Tambahkan ini dalam kode HTML atau PHP Anda:
JavaScript
Ini berfungsi baik dengan JavaScript:
sumber
coba ini masukkan saja sebelumnya
Silakan ubah xx-xxxxxxx-x ke kode Anda, silakan periksa implementasinya di sini http://www.gee.web.id/2016/11/how-to-leverage-browser-caching-for-google-analitycs.html
sumber
Google memperingatkan agar tidak menggunakan salinan lokal dari skrip analitik. Namun jika Anda melakukannya, Anda mungkin ingin menggunakan salinan plugin & skrip debug lokal.
Kekhawatiran kedua dengan cache agresif adalah bahwa Anda akan mendapatkan hit dari halaman cache - yang mungkin telah berubah atau telah dihapus dari situs.
sumber
Untuk memperbaiki masalah ini, Anda harus mengunduh file secara lokal dan menjalankan tugas cron untuk terus memperbarui. Catatan: ini tidak membuat situs web Anda lebih cepat, jadi sebaiknya abaikan saja.
Namun untuk tujuan demonstrasi, ikuti panduan ini: http://diywpblog.com/leverage-browser-cache-optimize-google-analytics/
sumber
Ini dapat melakukan triknya :)
sumber
Bergantung pada penggunaan data Google Analytics Anda, jika Anda menginginkan informasi dasar (seperti kunjungan, interaksi UI) Anda mungkin tidak dapat menyertakan analytics.js sama sekali, namun masih mengumpulkan data dalam GA.
Salah satu opsi mungkin menggunakan protokol pengukuran dalam skrip cache. Google Analytics: Ikhtisar Protokol Pengukuran
Ketika Anda mengatur metode transportasi secara eksplisit ke gambar, Anda dapat melihat bagaimana GA membangun suar gambarnya sendiri.
Anda dapat membuat permintaan GET atau POST Anda sendiri dengan payload yang diperlukan.
Namun, jika Anda membutuhkan tingkat detail yang lebih besar, itu mungkin tidak akan sepadan dengan usaha Anda.
sumber
Anda dapat mengatur distribusi cloudfront yang memiliki www.google-analytics.com sebagai server asalnya dan mengatur header kedaluwarsa yang lebih lama dalam pengaturan distribusi cloudfront. Kemudian, ubah domain itu di cuplikan Google. Ini mencegah beban di server Anda sendiri dan kebutuhan untuk terus memperbarui file dalam tugas cron.
Ini pengaturan & lupa. Jadi, Anda mungkin ingin menambahkan lansiran penagihan ke cloudfront jika seseorang "menyalin" cuplikan Anda dan mencuri bandwidth Anda ;-)
Sunting: Saya sudah mencobanya dan itu tidak mudah, Cloudfront melewati header Cache-Control tanpa cara mudah untuk menghapusnya
sumber
Buka file https://www.google-analytics.com/analytics.js di tab baru, salin semua kode.
Sekarang buat folder di direktori web Anda, ganti namanya menjadi google-analytics.
Buat file teks dalam folder yang sama dan rekatkan semua kode yang Anda salin di atas.
Ganti nama file ga-local.js
Sekarang ubah URL untuk memanggil file Script Analytics yang dihosting secara lokal di Kode Google Analytics Anda. Ini akan terlihat seperti ini yaitu https://domain.xyz/google-analytics/ga.js
Terakhir, tempatkan kode Google analytics BARU Anda ke dalam footer halaman web Anda.
Anda baik untuk pergi. Sekarang periksa situs web Anda dari Google PageSpeed Insights. Itu tidak akan menampilkan peringatan untuk Caching Browser Leverage Google Analytics. Dan satu-satunya masalah dengan solusi ini adalah, memperbarui Skrip Analytics secara manual.
sumber
Pada tahun 2020, agen pengguna Speed Insights adalah: "Chrome-Lighthouse" untuk seluler dan "Google Page Speed Insights" untuk desktop.
sumber
Anda dapat mengecilkan semua skrip Anda di halaman, termasuk
analytics.js
menggunakan:Ingatlah untuk memperkecil file sebelum menggunakannya. Kalau tidak, akan menghabiskan lebih banyak waktu pemrosesan.
sumber