Saytni internetga joylash va keyingi qadamlar

Hozircha saytingiz faqat sizning kompyuteringizda yashaydi — uni do'stingizga ko'rsatib bo'lmaydi. Bu darsda uni bepul internetga joylab, havolasini istalgan odamga yuborish mumkin bo'ladigan holga keltiramiz. Oxirida esa veb-dasturlashda keyin nimani o'rganish kerakligi haqida gaplashamiz.

Bu darsda

  • Hosting va domen nima
  • Saytni bir daqiqada joylash: Netlify Drop
  • GitHub Pages: qadamma-qadam, rasmlar bilan
  • Joylashdan oldingi tekshiruv ro'yxati
  • Keyingi qadamlar: Git, API, freymvorklar, backend
  • Bepul o'quv manbalari va loyiha g'oyalari

Hosting va domen

1-darsdan eslang: brauzer sahifani serverdan so'raydi. Demak, saytingizni hamma ko'rishi uchun uning fayllari kun-u tun yoqiq turadigan serverda turishi kerak.

Bizning saytimiz faqat HTML, CSS va JavaScript fayllaridan iborat — bunday saytlar statik sayt deyiladi. Statik saytlar uchun ko'plab xizmatlar bepul hosting va bepul manzil beradi:

XizmatQanday ishlaydiBepul manzil
GitHub PagesFayllarni GitHub'ga yuklaysiz, u saytga aylanadi. Dasturchilar orasida eng mashhuri.ism.github.io/loyiha
NetlifyPapkani brauzerga sudrab tashlaysiz — tamom.nom.netlify.app
Vercel, Cloudflare PagesGitHub bilan bog'lanadi, har o'zgarishda o'zi yangilanadi.nom.vercel.app, nom.pages.dev

O'z domeningizni (masalan, .uz bilan tugaydigan) domen sotuvchi kompaniyalardan yillik to'lov evaziga sotib olib, keyin shu xizmatlarga ulash mumkin. Boshlanishiga bepul manzil bemalol yetadi.

Siz joylagan sayt butun dunyoga ochiq bo'ladi. Sahifalarda telefon raqamingiz, uy manzilingiz, parollar yoki boshqa shaxsiy ma'lumotlar qolmaganini tekshiring.

1-usul. Netlify Drop — eng tezi

Agar saytni tezda kimgadir ko'rsatish kerak bo'lsa:

  1. Brauzerda app.netlify.com/drop sahifasini oching.
  2. Kompyuteringizdagi sayt papkasini (ichida index.html bor papkani) sichqoncha bilan shu sahifadagi maydonga sudrab tashlang.
  3. Bir necha soniyada https://tasodifiy-nom.netlify.app kabi havola paydo bo'ladi. Uni ochib ko'ring va do'stlaringizga yuboring.

Ro'yxatdan o'tmasangiz, bunday sayt vaqtinchalik bo'ladi. Uni saqlab qolish va nomini o'zgartirish uchun bepul akkaunt oching (Google yoki GitHub akkaunti bilan kirish mumkin).

2-usul. GitHub Pages — qadamma-qadam

GitHub — dasturchilar o'z kodlarini saqlaydigan va bir-biri bilan ulashadigan eng katta sayt. U yerda akkaunt ochish dasturchi uchun foydali: ish beruvchilar ko'pincha nomzodning GitHub sahifasiga qarashadi. GitHub'ning Pages xizmati esa kodingizni bepul saytga aylantiradi.

GitHub sahifalari ingliz tilida. Quyida har bir tugma va yozuvning ma'nosini tushuntirib boramiz. GitHub o'z dizaynini vaqti-vaqti bilan yangilab turadi — tugmalar joyi biroz farq qilsa, xuddi shu nomdagi yozuvlarni qidiring.

1. Akkaunt oching

github.com/signup sahifasida elektron pochta, parol va foydalanuvchi nomi (username) kiriting. Foydalanuvchi nomini o'ylab tanlang — u saytingiz manzilida bo'ladi. Masalan, nomingiz aziz-dev bo'lsa, manzil aziz-dev.github.io bo'ladi.

2. Yangi repozitoriy yarating

Repozitoriy (inglizcha repository, qisqacha «repo») — GitHub'dagi loyiha papkasi. Yuqori o'ng burchakdagi + belgisini bosib, New repository ni tanlang:

🔒github.com/new

Create a new repository

Repository name *
aziz-dev ▾ / veb-sayt1

✔ veb-sayt is available.

Description (optional)
Mening birinchi saytim
PublicAnyone on the internet can see this repository.2
PrivateYou choose who can see and commit to this repository.
Create repository3
Yangi repozitoriy yaratish sahifasi.
  1. 1Repository name — loyiha nomi, masalan veb-sayt. Bu nom sayt manzilining oxirida bo'ladi: aziz-dev.github.io/veb-sayt. Kichik lotin harflari va chiziqcha ishlating.
  2. 2Public (ochiq) — bepul GitHub Pages uchun repozitoriy ochiq bo'lishi kerak.
  3. 3Create repository — yaratish.

3. Sayt fayllarini yuklang

Yangi, bo'sh repozitoriy sahifasida uploading an existing file («mavjud faylni yuklash») havolasini bosing. Keyin kompyuteringizdagi sayt papkasini oching va ichidagi fayllarni (index.html, style.css, script.js, rasmlar papkasi) belgilab, shu sahifaga sudrab tashlang:

🔒github.com/aziz-dev/veb-sayt/upload/main
aziz-dev / veb-sayt
CodeIssuesPull requestsActionsSettings
Drag files here to add them to your repository
Or choose your files1
📄 index.html
📄 style.css
📄 script.js
📁 rasmlar/olma.svg
Commit changes2
Fayllarni GitHub'ga yuklash.
  1. 1Fayllarni shu maydonga sudrab tashlang yoki choose your files orqali tanlang. Yuklangan fayllar ro'yxati pastda ko'rinadi.
  2. 2Commit changes — o'zgarishlarni saqlash. GitHub'da har bir saqlash commit deyiladi; u loyiha tarixida qoladi.

index.html papkaning ichida emas, repozitoriyning eng yuqori qismida (ildizida) turishi kerak. Agar veb-sayt/index.html bo'lib yuklangan bo'lsa, sayt ochilmaydi.

4. Pages'ni yoqing

Repozitoriy sahifasining yuqorisidagi Settings (sozlamalar) bo'limiga o'ting, chapdagi ro'yxatdan Pages ni tanlang:

🔒github.com/aziz-dev/veb-sayt/settings/pages
aziz-dev / veb-sayt
CodeIssuesPull requestsActionsSettings
1
General
Collaborators
Code and automation
Branches
Actions
Pages2

GitHub Pages

Build and deployment

Source

Deploy from a branch ▾
Branch

Your GitHub Pages site is currently disabled.

⑂ main ▾📁 / (root) ▾Save
345
Settings → Pages: sayt qaysi tarmoqdan olinishini tanlash.
  1. 1Settings — repozitoriy sozlamalari.
  2. 2Pages — chap ro'yxatdagi «Code and automation» qismida.
  3. 3Branch (tarmoq) ro'yxatidan main ni tanlang. Avval u None bo'ladi.
  4. 4Papka: / (root) — ya'ni repozitoriyning ildizi, index.html turgan joy.
  5. 5Save — saqlash.

5. Saytingiz tayyor!

1–2 daqiqa kuting va Pages sahifasini yangilang (F5). Tepada yashil xabar chiqadi:

🔒github.com/aziz-dev/veb-sayt/settings/pages

GitHub Pages

Your site is live at https://aziz-dev.github.io/veb-sayt/↗ Visit site
12

Last deployed by aziz-dev 1 minute ago

Sayt internetga joylandi.
  1. 1«Your site is live at…» — «Saytingiz shu manzilda ishlayapti». Bu havolani istalgan odamga yuborishingiz mumkin: telefonda ham, boshqa davlatda ham ochiladi.
  2. 2Visit site — saytni ochib ko'rish.

Saytni yangilash

Saytga o'zgartirish kiritmoqchi bo'lsangiz, kompyuteringizda tahrirlang va o'zgargan fayllarni xuddi 3-qadamdagidek qayta yuklang (Add file → Upload files). Bir-ikki daqiqadan keyin sayt o'zi yangilanadi.

Agar foydalanuvchi nomingiz aziz-dev bo'lsa va repozitoriyni aynan aziz-dev.github.io deb nomlasangiz, saytingiz qisqa manzilda — https://aziz-dev.github.io da ochiladi. Shaxsiy portfolio uchun ajoyib.

Sayt ochilmasa

BelgiSababi va yechimi
404 — There isn't a GitHub Pages site hereHali tayyor emas (bir-ikki daqiqa kuting) yoki index.html ildizda emas, yoki nomi boshqacha (Index.html, index.htm).
Sahifa ochildi, lekin dizayn (CSS) yo'q<link href="..."> dagi yo'l noto'g'ri. Serverda katta-kichik harf farq qiladi: Style.css va style.css — ikki xil fayl.
Rasmlar chiqmayaptiYo'l C:\Users\... kabi to'liq (absolyut) yozilgan yoki rasm yuklanmagan. Faqat nisbiy yo'l ishlating: rasmlar/olma.svg.
Eski versiya ko'rinyaptiBrauzer eski nusxani eslab qolgan. Ctrl + F5 bilan to'liq yangilang.

Joylashdan oldin tekshiring

Haqiqiy dasturchilar saytni chiqarishdan oldin kichik ro'yxat bo'yicha tekshiradi. Siz ham shunday qiling:

Keyingi qadamlar

Siz veb-dasturlashning poydevorini qo'ydingiz: HTML, CSS va JavaScript'ni bilasiz, sayt yasab, uni internetga joylay olasiz. Bu — juda katta yutuq! Endi qayerga yurish mumkin?

Veb-dasturchi yo'li: HTML, CSS, JavaScript; keyin Git va loyihalar; keyin chuqur JavaScript va API; keyin freymvork yoki backend HTML, CSS, JS siz shu yerdasiz ✔ Git + loyihalar 3–5 ta o'z saytingiz Chuqur JS fetch, API, async Frontend React, Vue Backend Node.js, Python
Veb-dasturchining taxminiy yo'li.

1. Ko'p loyiha qiling

Eng muhim qadam — o'rganganlaringizni mustahkamlash. Darsliksiz, o'zingiz 3–5 ta kichik sayt yasang. G'oyalar:

Har bir loyihani GitHub'ga joylang — bu sizning portfoliongiz bo'ladi.

2. Git

Fayllarni GitHub'ga qo'lda yuklash — boshlanish uchun yaxshi, lekin dasturchilar buni Git dasturi orqali qiladi. Git — kodning «vaqt mashinasi»: har bir o'zgarish tarixda saqlanadi, istalgan vaqtda orqaga qaytish va jamoa bilan birga ishlash mumkin. Asosiy buyruqlar terminalda yoziladi:

git init                       # papkani Git loyihasiga aylantirish
git add .                      # barcha o'zgarishlarni tayyorlash
git commit -m "Bosh sahifa"    # tarixga saqlash (izoh bilan)
git push                       # GitHub'ga yuborish

VS Code'ning chap panelidagi Source Control bo'limi bu ishlarni tugmalar bilan qilish imkonini beradi.

3. JavaScript'ni chuqurroq

Zamonaviy saytlar ma'lumotni boshqa serverlardan oladi: ob-havo, valyuta kursi, yangiliklar. Buning uchun API (dasturlar bir-biri bilan gaplashadigan «eshik») va fetch ishlatiladi:

// Serverdan ma'lumot so'rash (internet kerak)
async function yukla() {
  const javob = await fetch("https://api.example.com/ob-havo?shahar=Toshkent");
  const malumot = await javob.json();     // JSON → JavaScript obyekti
  console.log(malumot.harorat);
}
yukla();

Bundan tashqari o'rganishga arziydi: async/await va Promise, modullar (import/export), xatolar bilan ishlash (try/catch) va TypeScript — turlari bor JavaScript.

4. Yo'nalish tanlang

Yo'nalishNima qiladiNimani o'rganish kerak
FrontendFoydalanuvchi ko'radigan qism: interfeyslar, ilovalarReact (eng mashhur), Vue yoki Svelte; Tailwind CSS; TypeScript
BackendServerdagi qism: ma'lumotlar bazasi, ro'yxatdan o'tish, to'lovNode.js + Express yoki Python + Django / FastAPI (Python kursi bu yerda asqotadi); SQL
Full-stackIkkalasi hamAvval bittasini yaxshi o'rganing, keyin ikkinchisini

Freymvorklarga (React va boshqalar) shoshilmang. Ular oddiy JavaScript ustiga qurilgan: JavaScript'ni — ayniqsa massivlar, obyektlar, funksiyalar va DOM'ni — yaxshi bilmasdan React'ni o'rganish juda qiyin bo'ladi.

Bepul o'quv manbalari

ManbaNima uchunTil
MDN Web DocsHTML, CSS, JS bo'yicha eng ishonchli ma'lumotnoma. Biror teg yoki xususiyatni unutsangiz — shu yerga qarang.ingliz (qisman rus)
javascript.infoJavaScript bo'yicha noldan murakkabgacha batafsil darslik.ingliz; rus tilida — learn.javascript.ru
freeCodeCampInteraktiv mashqlar, loyihalar va bepul sertifikatlar.ingliz
web.dev/learnGoogle'ning CSS, dizayn va qulaylik bo'yicha kurslari.ingliz
Frontend MentorTayyor dizaynlar: ularni HTML/CSS'da yasab, mahoratni oshirasiz.ingliz
Flexbox Froggy, Grid GardenFlexbox va Grid'ni o'yin orqali mashq qilish.ko'p tilda

Ingliz tili dasturchi uchun eng foydali qo'shimcha ko'nikma: hujjatlar, xato xabarlari va savol-javoblar asosan inglizcha. Kuniga 15–20 daqiqa ingliz tiliga ajrating — bir yildan keyin farqni sezasiz. Qanday o'rganish kerak darsidagi maslahatlarni ham eslang.

Mashqlar

1-mashq Sahifani joylashga tayyorlang

Quyidagi sahifaga joylashdan oldingi ro'yxatdagi ikki narsani qo'shing: <head> ichida bo'sh bo'lmagan <title> va name="description" bo'lgan <meta> teg (content atributida kamida 20 belgili tavsif bilan). Shuningdek, rasmga ma'noli alt yozing.

<!DOCTYPE html>
<html lang="uz">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
</head>
<body>
  <h1>Bog'dagi olmalar</h1>
  <img src="../assets/rasmlar/olma.svg" width="120">
  <p>Bizning bog'imizda o'n xil olma navi o'sadi.</p>
</body>
</html>
Yechimni ko'rish
<!DOCTYPE html>
<html lang="uz">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Bog'dagi olmalar</title>
  <meta name="description" content="Bog'imizdagi o'n xil olma navi haqida qisqacha ma'lumot.">
</head>
<body>
  <h1>Bog'dagi olmalar</h1>
  <img src="../assets/rasmlar/olma.svg" width="120" alt="Qizil olma">
  <p>Bizning bog'imizda o'n xil olma navi o'sadi.</p>
</body>
</html>

2-mashq Saytingizni dunyoga chiqaring

  1. Kurs davomida yasagan saytlaringizdan birini tanlang (masalan, vazifalar ro'yxati yoki portfolio).
  2. Yuqoridagi ro'yxat bo'yicha tekshiring.
  3. GitHub akkaunt oching va saytni GitHub Pages'ga joylang.
  4. Havolani telefoningizda oching. Hammasi to'g'ri ko'rinyaptimi?
  5. Havolani do'stingizga yuboring va fikrini so'rang.

3-mashq Birinchi mustaqil loyiha

Yuqoridagi «Ko'p loyiha qiling» ro'yxatidan bitta g'oyani tanlang va darsliksiz yasang. Qiyin joyda MDN'dan qidiring. Tugatgach, uni ham GitHub Pages'ga joylang.

O'zingizni sinang

Bu — butun kurs bo'yicha yakuniy test.

GitHub Pages'da sayt ochilishi uchun index.html qayerda turishi kerak?

  1. Istalgan papka ichida
  2. Repozitoriyning ildizida (eng yuqori qismida)
  3. rasmlar papkasida
  4. Kompyuterning ish stolida

To'g'ri. Pages sozlamasida / (root) tanlangani uchun index.html ildizda bo'lishi kerak.

Saytda <link href="Style.css"> yozilgan, fayl esa style.css deb nomlangan. Kompyuterda ishladi, serverda dizayn yo'qoldi. Nega?

  1. Server CSS'ni qo'llamaydi
  2. Internet sekin
  3. CSS fayl juda katta
  4. Serverda fayl nomlarida katta-kichik harf farq qiladi

To'g'ri. Shuning uchun fayl nomlarini doim kichik harflarda yozing.

Qaysi qatorda texnologiya va uning vazifasi to'g'ri juftlangan?

  1. HTML — tuzilish, CSS — ko'rinish, JavaScript — harakat
  2. HTML — harakat, CSS — tuzilish, JavaScript — ko'rinish
  3. HTML — ko'rinish, CSS — harakat, JavaScript — tuzilish
  4. Uchalasi ham bir xil ish qiladi

To'g'ri. Kursning eng asosiy g'oyasi aynan shu.

Elementlarni bir qatorga terib, ular orasini teng taqsimlash uchun qaysi CSS eng qulay?

  1. display: block
  2. position: absolute
  3. display: flex; justify-content: space-between;
  4. float: left

To'g'ri. Flexbox — 11-dars.

Tugma bosilganda biror ish bajarish uchun JavaScript'da nima ishlatiladi?

  1. console.log("click")
  2. tugma.addEventListener("click", funksiya)
  3. <button href="...">
  4. tugma.style.click = true

To'g'ri. Hodisalar — 17-dars.

React kabi freymvorkni qachon o'rganishni boshlagan ma'qul?

  1. HTML'ni o'rganishdan oldin
  2. Hech qachon — ular kerak emas
  3. JavaScript asoslarini (massiv, obyekt, funksiya, DOM) yaxshi o'zlashtirgandan keyin
  4. Faqat backend dasturchilar o'rganadi

To'g'ri. Freymvorklar oddiy JavaScript ustiga qurilgan.

Xulosa

  • Statik saytni bepul joylash mumkin: Netlify Drop (eng tezi) yoki GitHub Pages (dasturchilar uchun eng foydalisi).
  • GitHub Pages: repozitoriy → fayllarni yuklash → Settings → Pages → main, / (root) → Save.
  • Joylashdan oldin: title, description, alt, havolalar, telefon ko'rinishi, konsol xatolari, shaxsiy ma'lumotlar.
  • Keyingi qadamlar: loyihalar, Git, chuqur JavaScript (fetch, API), keyin frontend freymvork yoki backend.

Tabriklaymiz! Siz veb-dasturlash kursini tugatdingiz. Endi siz brauzerda ishlaydigan saytlarni noldan yarata olasiz va ularni butun dunyoga ko'rsata olasiz. Eng muhimi — to'xtamang: har kuni ozgina bo'lsa ham kod yozing. Har bir katta dasturchi ham aynan siz turgan joydan boshlagan.