Hubungi dukungan

Kami membalas melalui e-mail, biasanya dalam dua hari.

Google reCAPTCHA memeriksa kiriman ini untuk mencegah penyalahgunaan; data dikirim ke Google. Skrip hanya dimuat saat formulir ini dibuka.

← Semua artikel

Penghitung untuk situs statis

Hosting statis diam-diam telah menjadi cara yang masuk akal untuk menaruh situs kecil di internet. GitHub Pages, Codeberg Pages, Neocities, atau satu folder berkas di hosting murah mana pun: tanpa basis data, tanpa bahasa sisi server, tidak ada yang perlu diperbarui, tidak ada yang bisa dibobol.

Cara ini hanya punya satu kekurangan. Tidak ada log server yang bisa dibaca, dan tidak ada cara untuk menjalankan sesuatu yang bisa melakukan penghitungan. Sebuah situs diluncurkan, dan tidak ada yang memberi tahu apakah ada yang datang.

Untuk situasi inilah penghitung pengunjung diciptakan, dan itulah sebabnya penghitung sebenarnya tidak usang.

Apa yang dibutuhkan

Cuplikan kode dari halaman statistik dimasukkan ke dalam HTML, di tempat penghitung itu seharusnya berada. Hanya itu prosedurnya. Cara ini berhasil karena penghitung hanyalah sebuah gambar dan sebuah skrip kecil — dua hal yang disajikan oleh hosting statis mana pun tanpa perlu tahu atau peduli apa isinya.

hosting statisfolder berkas<img> · <script>server kamipenghitungan, penyimpanan, diagramtidak ada yang perlu dipasang, tidak ada basis data yang perlu dirawat, tidak ada cron job yang bisa terlupa

Penghitungan dikerjakan di server kami. Hosting Anda tetap berupa folder berkas.

Jangan salin skrip ke dalam repositori

Inilah satu saran yang menjadi inti seluruh tulisan ini, karena kebiasaan di situs statis justru mendorong kuat ke arah sebaliknya. Menyalin dependensi ke dalam repo biasanya praktik yang baik — hasilnya dapat direproduksi, tetap bertahan jika sumber upstream menghilang, dan menghemat satu permintaan.

Jangan lakukan itu di sini.

Skrip yang disalin membeku pada saat disalin. Skrip itu terus melakukan apa pun yang dilakukannya pada hari itu, selamanya, pada setiap kunjungan, dan tidak ada tindakan apa pun di sisi upstream yang dapat menjangkaunya. Itu bukan hipotesis: ketika resolusi layar dihapus dari penghitung tahun ini, salinan skrip lama terus mengirimkannya, dan satu-satunya cara untuk menghentikan pengumpulan itu adalah membuat server menolak nilai tersebut dari siapa pun.

Hal yang sama berlaku untuk perbaikan keamanan, perubahan pada data yang dikirim, dan apa pun lainnya yang seharusnya sampai ke pengunjung sebuah situs. Tautkan skripnya. Itu hanya satu permintaan, tersimpan di cache, dan selalu mutakhir.

Apa yang diberikannya, dan apa yang tidak

Penghitung memberikan jumlah pengunjung, hari, negara, browser, domain perujuk, halaman yang paling banyak dikunjungi, dan tampilan langsung tentang siapa yang sedang berada di situs saat ini. Untuk situs pribadi, halaman proyek, atau etalase toko kecil, biasanya itulah seluruh pertanyaannya.

Yang tidak dapat diberikannya adalah analisis log, karena memang tidak ada log. Tidak ada informasi tentang permintaan yang gagal, berkas yang menghasilkan 404, atau bandwidth. Jika hal-hal itu penting, hosting statis sejak awal memang bukan bentuk yang tepat untuk masalah tersebut.

Satu hal lagi yang cocok untuk situs statis

Tidak ada yang memerlukan akun di sini. Tidak ada pendaftaran, tidak ada kata sandi yang harus disimpan di repositori, dan tidak ada kunci yang bisa bocor ke commit publik — jenis kecelakaan yang sangat sering terjadi pada proyek situs statis.

Iklan