Bosh sahifa Wiki Static page

Static page

Static page — so‘rov kelgan paytda serverda dinamik hisoblanmay, oldindan tayyorlangan HTML va unga bog‘liq resurslar ko‘rinishida uzatiladigan veb-sahifa. Barcha foydalanuvchi odatda bir xil faylni oladi; farqlanish client JavaScript yoki tashqi xizmat orqali keyin yuz berishi mumkin. Statik sahifa oddiy qo‘lda yozilgan fayl yoki build jarayonida ma’lumotlardan yaratilgan natija bo‘lishi mumkin.

Yaratish usullari

Kichik saytda .html fayllar to‘g‘ridan-to‘g‘ri yoziladi. Static Site Generator Markdown, template va metadata’dan ko‘plab sahifa yaratadi. Build vaqtida CMS API, database export yoki repository fayllari o‘qilib, yakuniy katalogga HTML chiqariladi. Deployment shu o‘zgarmas artefaktlarni web server yoki object storage’ga joylaydi.

“Statik” mazmun hech qachon o‘zgarmaydi degani emas. Maqola tahrirlanganda sayt qayta build va deploy qilinadi. Incremental build faqat o‘zgargan sahifalarni yaratishi mumkin. Scheduled rebuild vaqtga bog‘liq contentni yangilaydi, webhook esa CMS’dagi nashrdan so‘ng pipeline’ni ishga tushiradi.

Yetkazib berish

Statik fayl CDN edge nuqtalarida uzoq muddat cache qilinishi mumkin. Origin’da application runtime va database so‘rovi bo‘lmagani uchun latency past, masshtablash sodda bo‘ladi. Hashed asset nomi o‘zgarmas faylga uzoq cache beradi; HTML esa yangi deploymentni tez ko‘rish uchun qisqaroq siyosat olishi mumkin.

index.html, 404 sahifa, MIME type va compression server konfiguratsiyasida to‘g‘ri beriladi. URL oxiridagi slash va fayl kengaytmasi canonical link hamda redirect bilan izchil boshqariladi. Cache purge yoki versionlangan path eski contentning uzoq qolib ketishini oldini oladi.

Dinamik imkoniyatlar

Forma serverless function yoki tashqi endpointga yuborilishi mumkin. Qidiruv client indeksida yoki alohida servisda bajariladi. Autentifikatsiya talab qiladigan shaxsiy ma’lumot sahifa HTML’iga build vaqtida qo‘shilmaydi; foydalanuvchi tasdiqlangach API’dan olinadi. Shu tariqa statik shell ichida dinamik komponentlar ishlashi mumkin.

Client-only content JavaScript o‘chirilganda yoki yuklanmay qolganda ko‘rinmasligi mumkin. Asosiy mazmun HTML’da bo‘lsa accessibility, link preview va crawler uchun barqarorroq. Hydration ishlatilsa serverdagi markup va client natijasi mos bo‘lishi kerak.

Cheklov va xavfsizlik

Har foydalanuvchiga serverda individual HTML kerak bo‘lsa, barcha variantni oldindan yaratish amaliy emas. Juda katta katalog build vaqtini uzaytiradi. Narx yoki zaxira kabi tez o‘zgaradigan ma’lumot stale bo‘lishi mumkin; uni client fetch, edge revalidation yoki dinamik route bilan ajratish kerak.

Runtime kamaygani attack surface’ni qisqartiradi, ammo sahifa avtomatik xavfsiz bo‘lib qolmaydi. Build dependency, CI token, CMS content va deployment bucket hujum nishonidir. Secret build artefaktiga qo‘shilsa, brauzer uni ko‘ra oladi. Content Security Policy, HTTPS va dependency tekshiruvi statik saytda ham qo‘llanadi.

Nashr va rollback

Statik deployment atomik bo‘lishi kerak: foydalanuvchi yangi HTML bilan eski, yo‘q asset aralashmasini olmasligi lozim. Artefakt avval yangi version katalogiga yuklanib, barcha fayl tayyor bo‘lgach active pointer almashtiriladi. Content-hashed assetlar oldingi release uchun ham bir muddat saqlanadi. Xato aniqlansa pointer avvalgi tekshirilgan artefaktga qaytariladi.

Preview deployment har pull request yoki CMS draft uchun alohida manzil beradi. U qidiruv indeksiga tushmasligi va maxfiy draftni umumiy internetga ochmasligi kerak. Access control, noindex va avtomatik expiration birga qo‘llanadi. Production build reproducible bo‘lsa, aynan tasdiqlangan commitdan chiqqan fayllar qayta yaratilishi va audit qilinishi mumkin.

Content yaxlitligi

Build vaqtida singan ichki link, yetishmayotgan rasm, takroriy canonical URL va noto‘g‘ri metadata tekshiriladi. Subresource Integrity tashqi yoki CDN’dagi script uchun kutilgan hashni belgilashi mumkin. Deployment manifest har fayl hashini saqlab, uzatish yoki storage’dagi tasodifiy o‘zgarishni aniqlashga yordam beradi.

Bog‘liq tushunchalar

Static Site Generator, Static hosting, Content Delivery Network, Pre-rendering, Dynamic page, Build pipeline, Jamstack