🔗
Домен

Асосий доменга CNAME қўйиб бўлмайди: Vercel, Railway ва AWS учун ечим

07.11.2026
← Барча мақолалар

Замонавий булут платформалари — Vercel, Railway, AWS ва бошқалар — махсус домен улашда кўпинча битта кўрсатма беради: «Доменингиз учун қуйидаги манзилга CNAME ёзуви яратинг». Субдомен учун бу ҳеч қандай муаммо туғдирмайди, www ёки app номига CNAME бемалол қўшилади. Лекин худди шу ёзувни асосий доменнинг ўзига, яъни misol-startap.uz га қўшмоқчи бўлганингизда DNS панели хато беради ёки ёзувни сақлайди-ю, кейин почта ишлашдан тўхтайди. Бу панелнинг камчилиги эмас, балки DNS стандартининг талаби. Қуйида сабабни ва ҳар бир платформа учун амалий ечимларни кўриб чиқамиз.

Нега асосий доменга CNAME қўйиб бўлмайди

CNAME ёзуви «бу ном аслида бошқа номнинг тахаллуси» деган маънони англатади. Стандарт бўйича CNAME бор номда бошқа ҳеч қандай ёзув бўлиши мумкин эмас, чунки резолвер бу ном ҳақидаги барча саволларни нишон номга йўналтиради. Асосий доменда эса мажбурий равишда SOA ва NS ёзувлари туради, кўпинча MX ва TXT ҳам бўлади. Шунинг учун асосий доменга CNAME қўйиш ушбу ёзувлар билан тўқнашади.

Баъзи панеллар бундай ёзувни рад этади, баъзилари эса қабул қилади, лекин натижа олдиндан айтиб бўлмайдиган бўлади: резолверларнинг бир қисми MX'ни топа олмайди ва почта йўқола бошлайди. Шунинг учун қуйидаги кўринишдаги ёзувдан қочиш керак.

; noto'g'ri: asosiy domendagi CNAME SOA, NS va MX bilan to'qnashadi
@     IN  CNAME  cname.platforma-misol.com.
@     IN  MX 10  mail.misol-startap.uz.

; to'g'ri: subdomen uchun CNAME
www   IN  CNAME  cname.platforma-misol.com.

1-ечим: платформа берган A ёзуви

Энг оддий йўл — платформа асосий домен учун IP манзил бериши. Vercel шундай қилади: лойиҳа созламаларидаги Domains бўлимида асосий домен учун A ёзуви ва унинг IP манзили кўрсатилади, www учун эса CNAME тавсия қилинади. Қийматларни мақоладан эмас, айнан ўз лойиҳангиз панелидан олинг, чунки платформалар тавсия этилган манзилларни вақти-вақти билан янгилаб туради. A ёзуви оддий ёзув бўлгани учун у MX ва TXT билан бемалол бирга яшайди ва исталган DNS панелида ишлайди.

@     IN  A      <Vercel panelida ko'rsatilgan IP>
www   IN  CNAME  <Vercel panelida ko'rsatilgan nom>.
@     IN  MX 10  mail.misol-startap.uz.

2-ечим: CNAME flattening, ALIAS ёки ANAME

Railway ва AWS'нинг кўп хизматлари (юк баланслагич, CloudFront, Elastic Beanstalk) доимий IP манзил бермайди, фақат хост номини беради, чунки уларнинг IP манзиллари ўзгариб туради. Бундай ҳолатда асосий домен учун «CNAME flattening» керак бўлади. Бу усулда DNS провайдери нишон номнинг жорий IP манзилларини ўзи аниқлаб, уларни оддий A ёзуви сифатида қайтаради. Ташқаридан қараганда асосий доменда фақат A ёзувлар туради, шунинг учун стандарт бузилмайди ва почта ёзувлари ҳам сақланиб қолади.

Турли провайдерлар бу имкониятни турлича атайди: Cloudflare'да асосий доменга CNAME қўшилганда flattening автоматик қўлланилади, бошқа баъзи провайдерларда ALIAS ёки ANAME деган махсус ёзув тури бор. AWS'нинг ўз DNS хизмати Route 53 ҳам AWS ресурслари учун Alias ёзувини таклиф қилади. Шуни ёдда тутингки, бу ёзувлар провайдернинг ўзига хос функцияси, стандарт DNS тури эмас, шунинг учун у фақат доменингизнинг ном серверлари шундай провайдерда бўлса ишлайди.

3-ечим: www асосий манзил, асосий домен эса йўналтиради

Агар DNS'ни бошқа провайдерга кўчиришни истамасангиз, энг ишончли ва универсал йўл — сайтнинг асосий манзили сифатида www ни танлаш. www платформага CNAME орқали уланади, асосий домен эса оддий A ёзуви билан ўзингизнинг хостинг серверингизга кўрсатилади ва у ерда барча сўровлар 301 йўналтириш билан www га ўтказилади. Бу усулнинг ягона шарти — йўналтирувчи серверда асосий домен учун ҳам SSL сертификат бўлиши, акс ҳолда https://misol-startap.uz очилганда браузер огоҳлантириш чиқаради.

# Nginx: asosiy domendan www ga 301 yo'naltirish
server {
    listen 443 ssl;
    server_name misol-startap.uz;
    ssl_certificate     /etc/letsencrypt/live/misol-startap.uz/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/misol-startap.uz/privkey.pem;
    return 301 https://www.misol-startap.uz$request_uri;
}

# Apache .htaccess varianti
RewriteEngine On
RewriteCond %{HTTP_HOST} ^misol-startap\.uz$ [NC]
RewriteRule ^(.*)$ https://www.misol-startap.uz/$1 [R=301,L]

Платформалар бўйича қисқача

ПлатформаСубдоменАсосий домен
VercelCNAMEПанелда кўрсатилган A ёзуви ёки flattening
RailwayCNAMEFlattening/ALIAS ёки www + йўналтириш
AWS (ALB, CloudFront)CNAMERoute 53 Alias, flattening ёки www + йўналтириш

Ҳар бир платформанинг аниқ талаблари вақт ўтиши билан ўзгариши мумкин, шунинг учун жадвални йўналиш сифатида қабул қилинг ва якуний қийматларни платформа ҳужжатларидан текширинг.

Мисол: стартап фронтенди Vercel'да, API Railway'да

Тошкентдаги кичик стартап жамоаси фронтендни Vercel'га, API'ни эса Railway'га жойлаштирди, домен ва корпоратив почта эса Ўзбекистондаги провайдерда қолди. Дастурчи дастлаб асосий доменга Railway берган CNAME'ни қўшмоқчи бўлди ва панел хато берди. Ечим қуйидагича бўлди: асосий домен учун Vercel панелида кўрсатилган A ёзуви қўшилди, www Vercel'га CNAME орқали уланди, API эса api.misol-startap.uz субдоменига Railway CNAME'и билан ўтказилди. MX ва SPF ёзувлари асосий доменда тегилмасдан қолди ва почта бир дақиқа ҳам узилмади.

Улангандан кейин текшириш

Ёзувларни қўшгандан кейин уларнинг дунёга қандай кўринишини текширинг. Асосий домен A ёзувларини, www эса CNAME'ни қайтариши, MX эса ўз жойида қолиши керак. Платформа панелида домен ҳолати «Valid» ёки шунга ўхшаш яшил белги билан кўрсатилиши, SSL сертификат эса автоматик чиқарилиши лозим.

dig misol-startap.uz A +short
dig www.misol-startap.uz CNAME +short
dig misol-startap.uz MX +short
curl -sI https://misol-startap.uz | head -n 3

Доменингиз sayt.uz'да бўлса, A, CNAME ва MX ёзувларини кабинетдаги DNS бўлимида қўшишингиз мумкин, асосий домендан www га йўналтириш учун эса оддий хостинг тарифи ҳам етарли.

Ўхшаш мақолалар

🔤 Ўзбекча сўзли домен танлаш: имло ва ўқилиш муаммоси 🔗 Tilda сайтига ўз доменингизни улаш: DNS созламалари босқичма-босқич 📄 Домен учун шартнома, ҳисоб-фактура ва далолатнома: нима керак ва қандай олинади 📧 Yandex 360 почтасини ўз доменингизга улаш: тасдиқлаш, MX, SPF ва DKIM
🌐 Тил
🇺🇿 O'zbek 🇺🇿 Ўзбек ✓ 🇷🇺 Русский 🇬🇧 English