SSR, singkatan untuk " Server-Side Rendering ," ialah teknik pembangunan web yang melibatkan penjanaan kandungan HTML halaman web pada pelayan sebelum menghantarnya ke penyemak imbas pengguna. Ini berbeza dengan pendekatan "Rendering Sisi Pelanggan"(CSR), di mana penyemak imbas memuat turun kod JavaScript dan membina halaman web selepas memuat turun.
Struktur dan Prinsip Kerja SSR
-
Permintaan Pengguna: Apabila pengguna mengakses tapak web, penyemak imbas menghantar permintaan kepada pelayan.
-
Pemprosesan Pelayan: Pelayan menerima permintaan dan memprosesnya dengan membina kandungan HTML halaman web. Ini termasuk mengambil data daripada pangkalan data, mencipta komponen antara muka dan memasang kandungan ke dalam dokumen HTML yang lengkap.
-
Mencipta HTML Lengkap: Selepas pemprosesan, pelayan mencipta dokumen HTML lengkap yang mengandungi kandungan, data dan komponen antara muka yang diperlukan.
-
Menghantar ke Penyemak Imbas: Pelayan menghantar dokumen HTML lengkap kembali ke penyemak imbas pengguna.
-
Memaparkan Halaman: Penyemak imbas menerima dokumen HTML dan menjadikannya untuk pengguna. Kod JavaScript dan sumber statik(CSS, imej) juga dimuatkan dan dilaksanakan oleh penyemak imbas.
Faedah SSR
- Kelebihan SEO: Enjin carian boleh memahami dengan lebih baik dan meletakkan kedudukan tapak web apabila kandungan dipra-diberikan pada pelayan.
- Paparan Lebih Pantas: Pengguna melihat kandungan dengan lebih pantas kerana dokumen HTML telah diprapaparkan.
- Sokongan untuk Peranti Lemah: Kandungan pra-diberikan meningkatkan pengalaman untuk peranti yang mempunyai prestasi yang lebih rendah atau sambungan yang lebih lemah.
- Sokongan untuk Pengguna Bukan JavaScript: SSR membolehkan paparan versi asas untuk pengguna yang tidak menggunakan JavaScript.
Kesimpulannya, SSR mengoptimumkan prestasi dan kebolehcarian tapak web dengan menjana kandungan HTML pada pelayan sebelum menghantarnya ke penyemak imbas. Ini memberikan pengalaman pengguna yang lebih baik, meningkatkan kedudukan enjin carian dan meningkatkan prestasi tapak web keseluruhan.