Bosh sahifa Wiki static site

static site

Static site — foydalanuvchi so‘rovi kelgan paytda serverda sahifa kodi qayta hisoblanmaydigan, oldindan tayyorlangan HTML, CSS, JavaScript va media fayllardan iborat veb-saytdir. Veb-server URLga mos tayyor faylni yuboradi. Sahifa manba kontent yoki templatedan build vaqtida yaratilishi mumkin, ammo ko‘rish vaqtida ma’lumotlar bazasi va server-side template majburiy emas.

Fayllarni yetkazish

Eng sodda static site katalogdagi index.html va unga bog‘langan aktivlardan tashkil topadi. Brauzer HTTP orqali HTMLni oladi, so‘ng uslub va skript fayllarini yuklaydi. Tayyor fayllar obyekt saqlagichi, oddiy web server yoki CDN orqali tarqatilishi mumkin.

Server har so‘rovda sahifa yaratmagani uchun javob yo‘li qisqa bo‘ladi. Fayl URL bilan bir xil bo‘lsa, CDN uni edge nuqtada keshga saqlaydi. Bu origin server yukini va foydalanuvchigacha bo‘lgan kechikishni kamaytiradi.

Static site generator

Ko‘p sahifali saytni qo‘lda HTML bilan takrorlash o‘rniga static site generator ishlatiladi. Kontent Markdown, JSON yoki CMSdan olinadi, template bilan birlashtiriladi va build natijasida yakuniy fayllar hosil bo‘ladi. Header, navigatsiya va metadata kabi umumiy qismlar bir joyda boshqariladi.

Odatdagi nashr jarayoni quyidagicha:

  1. muallif kontent yoki template faylini o‘zgartiradi;
  2. build vositasi sahifalarni yaratadi;
  3. link, test va optimizatsiya tekshiriladi;
  4. hosil bo‘lgan katalog hostingga yuklanadi;
  5. CDN eski keshni yangilaydi.

Bu modelda ishlab chiqarish serveriga generatorning o‘zi o‘rnatilishi shart emas.

Dinamik imkoniyatlar

Static atamasi sahifada JavaScript bo‘lmaydi degani emas. Brauzerdagi skript qidiruv indeksini yuklashi, tashqi APIga murojaat qilishi yoki interfeys holatini o‘zgartirishi mumkin. Forma serverless funksiya yoki alohida backendga yuboriladi. Shunday arxitekturada HTML statik, ayrim funksiyalar esa mijoz yoki tashqi xizmat orqali dinamik bo‘ladi.

Afzallik va cheklovlar

Tayyor fayllarda server-side kod bajarilmagani hujum yuzasini kamaytiradi va hostingni soddalashtiradi. Versiyalangan buildni qayta deploy qilish ham oson. Biroq tez-tez o‘zgaradigan shaxsiy sahifa, murakkab ruxsat yoki real vaqtli ma’lumot uchun alohida backend talab etiladi.

Minglab sahifalarning har o‘zgarishda to‘liq qayta qurilishi build vaqtini uzaytirishi mumkin. Incremental build faqat o‘zgargan qismlarni yaratadi. Kontent yangilanish tezligi, sahifalar soni va shaxsiylashtirish talabi static yondashuv chegarasini belgilaydi.

URL va kesh

Fayl nomiga kontent hashini qo‘shish CSS va JavaScriptni uzoq muddat keshda saqlash imkonini beradi. HTML esa yangi aktiv manzillarini ko‘rsatishi uchun qisqaroq kesh siyosatiga ega bo‘lishi mumkin. 404.html, redirect qoidalari va trailing slash xatti-harakati hosting platformasida alohida sozlanadi.

SEO va metadata

Oldindan yaratilgan HTML qidiruv tizimi va havola preview xizmati uchun title, description, canonical URL hamda Open Graph metadatasini bevosita beradi. Har sahifaning yagona manzili build vaqtida aniqlanadi. Sitemap va robots qoidalari ham fayl sifatida hosil qilinishi mumkin. JavaScript orqali keyin yuklanadigan asosiy kontent ayrim crawler yoki preview vositasida to‘liq ko‘rinmasligi mumkin; statik HTML bu bog‘liqlikni kamaytiradi. Biroq noto‘g‘ri generator minglab bir xil title yoki takroriy URL yaratishi mumkin. Build tekshiruvi singan ichki link, yetishmayotgan metadata va bir xil canonical manzillarni deploydan oldin aniqlaydi.

Bog‘liq tushunchalar

HTML, static site generator, CDN, Jamstack, hosting, cache control, serverless function