Cloudflare এর হাতেখড়ি (পর্ব ৩) – Custom Domain ও DNS সেটআপ

Cloudflare Custom Domain ও DNS সেটআপ

এতদিন আমাদের সাইট চলছিল my-first-site.pages.dev-এর মতো একটা ফ্রি সাবডোমেইনে। কিন্তু একটা প্রফেশনাল প্রজেক্টে নিজের ডোমেইন দরকার — যেমন pathokghar.com। এই পর্বে শিখব কীভাবে নিজের ডোমেইন Cloudflare Pages-এর সাথে যুক্ত করতে হয়, আর এর পেছনে DNS আসলে কীভাবে কাজ করে।

DNS কী — এক লাইনে

DNS (Domain Name System) হলো ইন্টারনেটের ফোনবুক — মানুষ মনে রাখে pathokghar.com-এর মতো নাম, কিন্তু কম্পিউটার আসলে যোগাযোগ করে IP address দিয়ে (যেমন 104.21.xx.xx)। DNS রেকর্ড বলে দেয় — এই নামের পেছনে আসলে কোন ঠিকানায় যেতে হবে।

গুরুত্বপূর্ণ DNS রেকর্ড টাইপ

রেকর্ড কাজ উদাহরণ
A ডোমেইনকে সরাসরি একটা IPv4 ঠিকানায় নির্দেশ করে arifstack.com → 192.0.2.1
CNAME একটা ডোমেইনকে আরেকটা ডোমেইনের নামে নির্দেশ করে www.arifstack.com → my-first-site.pages.dev
MX ডোমেইনের ইমেইল কোথায় যাবে তা ঠিক করে arifstack.com → Google Workspace মেইল সার্ভার
TXT যাচাইকরণ ও অতিরিক্ত তথ্যের জন্য (ভেরিফিকেশন, SPF) google-site-verification=xyz...

ধাপ ১ — ডোমেইন Cloudflare-এ যোগ করা

ডোমেইন যদি অন্য কোথাও কেনা থাকে (যেমন Namecheap, GoDaddy), তাহলে সেটার DNS ম্যানেজমেন্ট Cloudflare-এ নিয়ে আসতে হবে।

  1. Cloudflare Dashboard-এ Add a Site চাপুন
  2. নিজের ডোমেইন লিখুন (যেমন arifstack.com)
  3. Cloudflare স্বয়ংক্রিয়ভাবে বর্তমান DNS রেকর্ড স্ক্যান করে দেখাবে
  4. Cloudflare দুইটা Nameserver দেবে (যেমন ana.ns.cloudflare.com)
  5. যেখান থেকে ডোমেইন কেনা হয়েছে (রেজিস্ট্রার), সেখানে গিয়ে ডিফল্ট Nameserver বদলে Cloudflare-এর দেওয়া দুটো বসাতে হবে

নোট: Nameserver বদলানোর পর পুরো বিশ্বজুড়ে সব জায়গায় আপডেট হতে সাধারণত কয়েক ঘণ্টা থেকে সর্বোচ্চ ২৪-৪৮ ঘণ্টা লাগতে পারে — এটাকে বলে DNS Propagation

ধাপ ২ — Pages প্রজেক্টে Custom Domain যুক্ত করা

ডোমেইন Cloudflare-এ চলে এলে (Nameserver একটিভ হলে), এবার সেটাকে নির্দিষ্ট Pages প্রজেক্টের সাথে জোড়া লাগানো।

  1. Workers & Pages-এ নিজের প্রজেক্টে যান
  2. Custom domains ট্যাবে যান
  3. Set up a custom domain চাপুন
  4. ডোমেইন লিখুন (যেমন arifstack.com অথবা www.arifstack.com)
  5. Cloudflare স্বয়ংক্রিয়ভাবে দরকারি CNAME রেকর্ড বসিয়ে দেবে, কারণ ডোমেইন আগে থেকেই Cloudflare-এ আছে

root domain vs www — কোনটা ব্যবহার করবেন

arifstack.com (root/apex domain) আর www.arifstack.com — দুটোই আলাদা। সাধারণত একটাকে মূল রাখা হয়, আরেকটা থেকে রিডাইরেক্ট করা হয়। Cloudflare Pages-এ দুটোই Custom domain হিসেবে যোগ করে একটা থেকে আরেকটায় রিডাইরেক্ট সেট করা যায়।

// উদাহরণ DNS রেকর্ড, দুটো ডোমেইনই Pages প্রজেক্টে যুক্ত
Type: CNAME   Name: @      Target: my-first-site.pages.dev
Type: CNAME   Name: www    Target: my-first-site.pages.dev

@ মানে root domain নিজেই (arifstack.com), Cloudflare-এ এভাবে root domain-এও CNAME ব্যবহার করা যায় — এটা Cloudflare-এর একটা বিশেষ সুবিধা (CNAME flattening), সাধারণ DNS প্রোভাইডারে root domain-এ CNAME বসানো যায় না।

SSL — স্বয়ংক্রিয়ভাবে HTTPS

Custom domain যোগ করার পর Cloudflare নিজে থেকেই একটা ফ্রি SSL সার্টিফিকেট ইস্যু করে, সাধারণত কয়েক মিনিটের মধ্যে। এতে সাইট স্বয়ংক্রিয়ভাবে http://-এর বদলে https://-এ চলে যায় — কোনো বাড়তি কনফিগারেশন লাগে না।

ইন্টারেক্টিভ — DNS রেজলিউশন দেখো

নিচে একটা ডোমেইন টাইপ করলে দেখো ব্রাউজার কীভাবে ধাপে ধাপে সঠিক সার্ভার খুঁজে বের করে।

সাধারণ সমস্যা ও সমাধান

  • সাইট লোড হচ্ছে না — Nameserver ঠিকমতো বসানো হয়েছে কিনা যাচাই করুন, propagation-এর জন্য অপেক্ষা করুন
  • SSL এরর দেখাচ্ছে — SSL সার্টিফিকেট ইস্যু হতে কয়েক মিনিট সময় লাগে, একটু অপেক্ষা করে আবার চেষ্টা করুন
  • www কাজ করছে কিন্তু root domain করছে না (বা উল্টো) — দুটো আলাদা Custom domain হিসেবে যোগ করা হয়েছে কিনা চেক করুন
  • পুরনো ইমেইল কাজ করছে না ডোমেইন Cloudflare-এ আনার পর — MX রেকর্ড ঠিকমতো কপি হয়েছে কিনা Cloudflare-এর DNS ট্যাবে চেক করুন

নিজে চেষ্টা করো

Exercise:

  1. নিজের একটা ডোমেইন থাকলে (বা একটা ফ্রি টেস্ট ডোমেইন নিয়ে) সেটা Cloudflare-এ যোগ করো, Nameserver বদলে দাও।
  2. নিজের Pages প্রজেক্টে Custom domain যোগ করো, SSL সার্টিফিকেট ইস্যু হওয়া পর্যন্ত অপেক্ষা করো।
  3. Cloudflare-এর DNS ট্যাবে গিয়ে A, CNAME, TXT — বিভিন্ন রেকর্ড টাইপ চিহ্নিত করো, প্রতিটার কাজ কী তা নিজের ভাষায় লেখো।
  4. root domain থেকে www-এ (বা উল্টোদিকে) একটা রিডাইরেক্ট সেট করে দেখো।

পরের পর্বে যা থাকছে

এতদিন আমরা শুধু স্ট্যাটিক সাইট হোস্ট করেছি। পরের পর্ব থেকে আমরা ঢুকব Workers-এর জগতে — সার্ভারলেস ফাংশন কী, কীভাবে প্রথম Worker লিখতে হয়, আর এটা Pages থেকে কীভাবে আলাদা।

একটি মন্তব্য পোস্ট করুন

নবীনতর পূর্বতন

যোগাযোগ ফর্ম