একটি ই-কমার্স সাইটে একই জুতা পাঁচ-ছয়টি আলাদা URL দিয়ে খোলা যাচ্ছে। পণ্যের মূল URL একটি, ফেসবুক বিজ্ঞাপন থেকে কেউ এলে tracking parameter যোগ হয়ে আরেকটি URL তৈরি হচ্ছে, দাম অনুযায়ী সাজালে আরেকটি, রঙ বাছলে আরও একটি। এর সঙ্গে http, https, www ও non-www সংস্করণও যদি ঠিকভাবে নিয়ন্ত্রণ করা না হয়, তাহলে একই পণ্যের জন্য সার্চ ইঞ্জিনের সামনে বেশ কয়েকটি আলাদা URL হাজির হতে পারে।
এরপর সার্চ কনসোলে (Search Console) দেখা গেল Google একটি URL-কে ডুপ্লিকেট পেজ হিসেবে ধরেছে, কোথাও আবার আপনার দেওয়া ঠিকানার বদলে অন্য URL-কে ক্যানোনিক্যাল হিসেবে বেছে নিয়েছে। তখন প্রশ্ন আসে—সব URL কি রিডাইরেক্ট (redirect) করে দিতে হবে? কিন্তু tracking বা filter URL তো ব্যবহারকারীর কাজে লাগে।
এই জায়গাতেই ক্যানোনিক্যাল ট্যাগ (Canonical Tag) দরকার হয়।
ক্যানোনিক্যাল ট্যাগ কোনো ডুপ্লিকেট URL মুছে দেয় না। এটি সার্চ ইঞ্জিনকে জানায়—একই বা খুব কাছাকাছি কনটেন্ট একাধিক URL-এ থাকলে কোন URL-টিকে প্রধান বা পছন্দের সংস্করণ হিসেবে বিবেচনা করা উচিত।
ডুপ্লিকেট কনটেন্ট আসলে কী?
টেকনিক্যাল এসইওতে ডুপ্লিকেট কনটেন্ট (Duplicate Content) বলতে সাধারণত এমন পরিস্থিতিকে বোঝানো হয়, যেখানে একই বা প্রায় একই মূল বিষয়বস্তু একাধিক URL থেকে দেখা যায়।
ধরা যাক, একটি পণ্যের মূল ঠিকানা:
https://example.com/shoes/black-runner
ফেসবুক বিজ্ঞাপন থেকে এলে URL হলো:
https://example.com/shoes/black-runner?utm_source=facebook
আবার কোনো session ID যুক্ত হলে:
https://example.com/shoes/black-runner?session=98453
একজন ব্যবহারকারীর কাছে এগুলো একই পণ্য। কিন্তু সার্চ ইঞ্জিনের ক্রলার (crawler) এগুলোকে আলাদা URL হিসেবে দেখতে পারে।
এ ধরনের ডুপ্লিকেট URL শুধু ই-কমার্স সাইটে হয় না। ব্লগ, সংবাদসাইট, SaaS সাইট বা বড় করপোরেট ওয়েবসাইটেও parameter, protocol, filter, printer version, session URL বা একই কনটেন্টের বিভিন্ন কারিগরি সংস্করণের কারণে এমন পরিস্থিতি তৈরি হয়।
ডুপ্লিকেট কনটেন্ট মানেই কি Google penalty?
না। এই বিষয়টি পরিষ্কারভাবে বোঝা জরুরি।
নিজের সাইটে স্বাভাবিক কারিগরি কারণে একই কনটেন্ট একাধিক URL-এ পাওয়া গেলে সেটিকে সাধারণভাবে কোনো শাস্তিমূলক “Google penalty” হিসেবে দেখা ঠিক নয়। Parameter, http বনাম https, tracking code, filter বা printer version-এর কারণে ডুপ্লিকেট URL তৈরি হওয়া ওয়েবসাইটের স্বাভাবিক কারিগরি বাস্তবতার অংশ হতে পারে।
সমস্যা মূলত অন্য জায়গায়।
একই কনটেন্টের জন্য অনেক URL থাকলে সার্চ ইঞ্জিনকে ঠিক করতে হয় কোন URL-টিকে প্রধান হিসেবে দেখানো হবে। আপনার পছন্দের URL-এর বদলে অন্য কোনো সংস্করণ সার্চ ফলাফলে আসতে পারে। বিভিন্ন URL-এ পাওয়া লিংক ও অন্যান্য ranking signal-ও ছড়িয়ে যেতে পারে। আবার crawler একই বিষয়বস্তুর বহু সংস্করণ ঘুরে দেখতে গিয়ে অপ্রয়োজনীয় সময় ব্যয় করতে পারে।
অর্থাৎ সাধারণ ডুপ্লিকেট কনটেন্টের সমস্যা মূলত সংকেত এক জায়গায় আনা, ক্রলিং ঠিক রাখা এবং কোন URL সার্চ ফলাফলে আসবে তা পরিষ্কার করার সমস্যা।
ইচ্ছাকৃতভাবে কপি করা পেজ বানিয়ে সার্চ ফলাফলে প্রভাব ফেলার চেষ্টা ভিন্ন বিষয়। সেই ধরনের প্রতারণামূলক ব্যবহারের সঙ্গে স্বাভাবিক কারিগরি ডুপ্লিকেট URL-কে এক করে দেখা উচিত নয়।
ডুপ্লিকেট কনটেন্ট সাধারণত কীভাবে তৈরি হয়?
| কারণ | উদাহরণ |
| Tracking parameter | /product/shoe?utm_source=facebook |
| Session ID | /product/shoe?session=12345 |
| সাজানো বা ফিল্টার করা | /shoes?sort=price-low |
| পণ্যের ভিন্ন সংস্করণ | /shirt?color=blue এবং /shirt?color=red |
| HTTP ও HTTPS | http://example.com/page এবং https://example.com/page |
| www ও non-www | www.example.com/page এবং example.com/page |
| শেষে slash থাকা বা না থাকা | /guide এবং /guide/ |
| ছাপার উপযোগী সংস্করণ | /article এবং /article?print=1 |
| Pagination | /category?page=2 |
বিশেষ করে ই-কমার্স সাইটে parameter-ভিত্তিক URL খুব দ্রুত বাড়তে পারে। একটি category page-এ filter, sort, campaign tracking এবং session parameter একসঙ্গে কাজ করলে একই ধরনের কনটেন্টের অসংখ্য URL তৈরি হওয়া অস্বাভাবিক নয়।
ক্যানোনিক্যাল ট্যাগ কী?
ক্যানোনিক্যাল ট্যাগ হলো HTML-এর একটি <link> element, যা সাধারণত পেজের <head> অংশে বসানো হয়। এটি সার্চ ইঞ্জিনকে জানায়, বর্তমান পেজটির মতো একই বা খুব কাছাকাছি কনটেন্টের একাধিক URL থাকলে কোন URL-টিকে মূল বা পছন্দের সংস্করণ হিসেবে ধরতে হবে।
উদাহরণ:
<head>
<title>Black Running Shoe</title>
<link rel=”canonical” href=”https://example.com/shoes/black-runner”>
</head>
এখন ধরুন, একই পণ্য এই URL-এও খোলা যাচ্ছে:
https://example.com/shoes/black-runner?utm_source=facebook
এই parameter-সহ URL-এর <head> অংশে লেখা যেতে পারে:
<link rel=”canonical” href=”https://example.com/shoes/black-runner”>
এর ফলে parameter-সহ URL বন্ধ হয়ে যাবে না। ব্যবহারকারী সেটি খুলতে পারবেন। বিজ্ঞাপন বা analytics-এর tracking-ও প্রয়োজনমতো কাজ করতে পারে। কিন্তু সার্চ ইঞ্জিনকে বোঝানো হবে, মূল পছন্দের URL হলো:
https://example.com/shoes/black-runner
ক্যানোনিক্যাল ট্যাগ কি ডুপ্লিকেট কনটেন্ট সমস্যা পুরোপুরি সমাধান করে?
এখানেই একটি গুরুত্বপূর্ণ পার্থক্য আছে।
ক্যানোনিক্যাল ট্যাগ কঠোর নির্দেশ নয়; এটি একটি শক্তিশালী ইঙ্গিত। আপনি একটি URL-কে ক্যানোনিক্যাল ঘোষণা করলেও সার্চ ইঞ্জিন সব অবস্থায় সেটিকেই মানতে বাধ্য নয়।
ধরা যাক, আপনি লিখেছেন:
<link rel=”canonical” href=”https://example.com/product”>
কিন্তু সাইটের বাস্তব অবস্থা এমন—
- বেশিরভাগ internal link যাচ্ছে /product?ref=home ঠিকানায়;
- sitemap-এ অন্য URL রয়েছে;
- canonical URL নিজেই আবার redirect হচ্ছে;
- দুই পেজের বিষয়বস্তু বাস্তবে যথেষ্ট আলাদা;
- HTTPS পেজ থাকা সত্ত্বেও canonical HTTP সংস্করণে যাচ্ছে।
তাহলে একদিকে canonical একটি সংকেত দিচ্ছে, কিন্তু সাইটের অন্যান্য অংশ অন্য সংকেত দিচ্ছে। এমন অবস্থায় সার্চ ইঞ্জিন আপনার ঘোষিত canonical বাদ দিয়ে অন্য URL বেছে নিতে পারে।
তাই শুধু tag বসিয়ে কাজ শেষ হয়ে যায় না। Internal link, sitemap, redirect, protocol এবং canonical—সব জায়গায় একই পছন্দের URL রাখা বেশি কার্যকর।
কোন কোন ডুপ্লিকেট পেজে ক্যানোনিক্যাল ট্যাগ কাজে দেয়?
Tracking parameter-সহ URL
ক্যানোনিক্যাল ট্যাগের সবচেয়ে পরিচিত ব্যবহারগুলোর একটি এটি।
মূল URL:
https://example.com/laptop/dell-x
প্রচারাভিযান থেকে আসা URL:
https://example.com/laptop/dell-x?utm_campaign=eid-sale
দ্বিতীয় URL analytics বা প্রচারাভিযানের ফল মাপার কাজে দরকার হতে পারে। কিন্তু কনটেন্ট একই। তাই parameter-সহ URL থেকে মূল URL-এর দিকে canonical দেওয়া যুক্তিসংগত।
Sort ও filter URL
ধরা যাক:
/phones
/phones?sort=price-low
/phones?sort=rating
এখানে শুধু পণ্যের সাজানোর ক্রম বদলেছে। যদি আলাদা URL-গুলোকে সার্চ ফলাফলে স্বাধীন পেজ হিসেবে দেখানোর প্রয়োজন না থাকে, মূল category URL-এর দিকে canonical দেওয়া যেতে পারে।
তবে filter URL-এর ক্ষেত্রে অন্ধভাবে সবকিছুকে parent category-তে canonical করা ঠিক নয়।
যেমন:
/phones?brand=samsung
এই URL যদি সত্যিই আলাদা search demand পূরণ করে, ভালো কনটেন্ট থাকে এবং “Samsung Phones” নামে একটি গুরুত্বপূর্ণ landing page হিসেবে কাজ করে, তাহলে সেটিকে সাধারণ duplicate ধরে canonical করে দেওয়া ভুল হতে পারে।
www বনাম non-www এবং HTTP বনাম HTTPS
একই পেজ যদি নিচের সব ঠিকানায় খোলে—
http://example.com/page
https://example.com/page
https://www.example.com/page
তাহলে একটি নির্দিষ্ট সংস্করণ বেছে নেওয়া দরকার।
তবে এ ধরনের ক্ষেত্রে শুধু canonical-এর ওপর নির্ভর না করে সাধারণত permanent redirect ব্যবহার করাই পরিষ্কার সমাধান। কারণ ব্যবহারকারীর আলাদাভাবে HTTP বা পুরোনো host version-এ থাকার কোনো প্রয়োজন নেই।
শেষে slash থাকা বা না থাকা
দুটি URL দেখুন:
https://example.com/blog/post
https://example.com/blog/post/
যদি দুটিই 200 OK দিয়ে একই পেজ দেখায়, একটি নির্দিষ্ট রীতি ঠিক করা ভালো। সম্ভব হলে একটি URL থেকে অন্যটিতে redirect করুন।
কোনো প্রযুক্তিগত কারণে দুটিই চালু রাখতে হলে canonical অন্তত কোনটি মূল সংস্করণ তা পরিষ্কার করতে সাহায্য করবে।
ছাপার উপযোগী পেজ
একই লেখার একটি সাধারণ সংস্করণ এবং একটি printer-friendly version থাকতে পারে।
উদাহরণ:
/news/article
/news/article?print=1
দ্বিতীয় URL ব্যবহারকারীর জন্য কাজে লাগলেও সেটিকে আলাদা search result হিসেবে দেখানোর দরকার নাও থাকতে পারে। এমন ক্ষেত্রে print version থেকে মূল article URL-এ canonical দেওয়া স্বাভাবিক সমাধান।
কাছাকাছি ধরনের product variant
একটি টি-শার্টের তিনটি রঙের URL:
/tshirt?color=black
/tshirt?color=blue
/tshirt?color=red
যদি প্রতিটি পেজের মূল বিষয়বস্তু প্রায় একই হয় এবং রঙ কেবল একটি পছন্দের বিকল্প হয়, তাহলে base product URL-কে canonical হিসেবে বেছে নেওয়া যেতে পারে।
কিন্তু সব product variant একভাবে সামলানো ঠিক নয়। প্রতিটি রঙের আলাদা ছবি, SKU, stock, description বা search demand থাকলে আলাদা URL indexযোগ্য রাখার যুক্তি থাকতে পারে।
অর্থাৎ “সব variant-কে parent product-এ canonical করুন”—এমন কোনো সর্বজনীন নিয়ম নেই।
ক্যানোনিক্যাল ট্যাগ বনাম রিডাইরেক্ট বনাম নোইনডেক্স বনাম hreflang
এই চারটি পদ্ধতির উদ্দেশ্য আলাদা। এগুলো একে অন্যের বিকল্প নয়।
| পদ্ধতি | এটি কী করে | কখন ব্যবহার করবেন |
| ক্যানোনিক্যাল ট্যাগ | একই বা খুব কাছাকাছি কয়েকটি URL-এর মধ্যে পছন্দের URL জানায়; অন্য URL চালু থাকে | parameter URL, print version বা ব্যবহারকারীর জন্য সচল রাখা দরকার এমন duplicate URL |
| ৩০১ রিডাইরেক্ট | ব্যবহারকারী ও crawler-কে এক URL থেকে অন্য URL-এ পাঠিয়ে দেয় | পুরোনো বা অপ্রয়োজনীয় duplicate URL আর আলাদাভাবে থাকার দরকার নেই |
| নোইনডেক্স (noindex) | পেজটিকে সার্চ ফলাফলে না দেখানোর নির্দেশ দেয় | পেজ search result-এ একেবারেই দরকার নেই |
| hreflang | ভিন্ন ভাষা বা অঞ্চলের উপযোগী পেজগুলোর সম্পর্ক জানায় | বাংলা, ইংরেজি বা অঞ্চলভিত্তিক আলাদা সংস্করণ থাকলে |
নোইনডেক্স আর ক্যানোনিক্যাল এক জিনিস নয়
ক্যানোনিক্যাল বলছে:
“এই কনটেন্টের জন্য অন্য URL-টিকে প্রধান হিসেবে বিবেচনা করুন।”
নোইনডেক্স বলছে:
“এই পেজটি সার্চ ফলাফলে দেখাবেন না।”
এই দুই উদ্দেশ্য এক নয়।
একটি duplicate URL-এর signal অন্য URL-এর সঙ্গে একত্র করতে চাইলে canonical উপযুক্ত হতে পারে। কিন্তু কোনো পেজ একেবারেই search result-এ না চাইলে noindex-এর উদ্দেশ্য আলাদা।
hreflang-এর ক্ষেত্রেও ভুল হয়
ধরা যাক, একই নিবন্ধের বাংলা ও ইংরেজি সংস্করণ আছে:
/bn/seo-guide
/en/seo-guide
এগুলোকে শুধু “একই বিষয়” বলে একটি ভাষা থেকে অন্য ভাষায় canonical করে দেওয়া ঠিক নয়। কারণ দুটি পেজ আলাদা পাঠকের জন্য তৈরি।
এখানে প্রতিটি ভাষার পেজ সাধারণত নিজের URL-কে canonical রাখবে এবং ভাষা বা অঞ্চলভিত্তিক সম্পর্ক বোঝাতে hreflang ব্যবহার করা হবে।
Redirect নাকি Canonical—কোনটি ব্যবহার করবেন?
একটি প্রশ্নই সিদ্ধান্ত সহজ করে দিতে পারে:
Duplicate URL-টিতে ব্যবহারকারীর আলাদাভাবে পৌঁছানোর দরকার আছে কি?
উত্তর যদি “না” হয়, তাহলে redirect সাধারণত বেশি উপযুক্ত।
যেমন—
পুরোনো URL, HTTP version, ভুল slug কিংবা অপ্রয়োজনীয় www/non-www সংস্করণ।
এসব URL ব্যবহারকারীর জন্য আলাদা করে রাখার কোনো কারণ না থাকলে permanent redirect দিয়ে মূল URL-এ পাঠানো পরিষ্কার সমাধান।
কিন্তু tracking parameter, sort URL বা অন্য কোনো বৈধ প্রয়োজনে URL সচল রাখতে হলে canonical বেশি উপযোগী হতে পারে।
ক্যানোনিক্যাল ট্যাগ ব্যবহারের ভালো চর্চা
| অনুশীলন | কেন গুরুত্বপূর্ণ |
| Indexযোগ্য পেজে self-referencing canonical রাখুন | প্রতিটি পেজের পছন্দের URL পরিষ্কার থাকে |
| প্রতি পেজে একটি canonical রাখুন | পরস্পরবিরোধী সংকেত তৈরি হয় না |
| পূর্ণ URL ব্যবহার করুন | protocol, domain ও path নিয়ে বিভ্রান্তি কমে |
| Canonical target যেন সচল ও indexযোগ্য হয় | Search Engine সহজে মূল পেজটি বুঝতে পারে |
| Canonical target robots.txt দিয়ে block করবেন না | crawler যাতে পেজে পৌঁছাতে পারে |
| Canonical target-এ noindex দেবেন না | বিপরীত নির্দেশ তৈরি হওয়া এড়ায় |
| Redirect হওয়া URL-কে canonical না করাই ভালো | সরাসরি চূড়ান্ত URL দেওয়া পরিষ্কার |
| Sitemap ও internal link-এ একই URL ব্যবহার করুন | সব সংকেত একই দিকে যায় |
| সত্যিই duplicate বা near-duplicate কি না যাচাই করুন | আলাদা কনটেন্ট ভুলভাবে canonical হওয়া রোধ করে |
Self-referencing canonical কেন গুরুত্বপূর্ণ?
Self-referencing canonical মানে একটি পেজ নিজেকেই canonical হিসেবে উল্লেখ করছে।
ধরা যাক:
https://example.com/blog/seo-guide
এর <head> অংশে থাকবে:
<link rel=”canonical” href=”https://example.com/blog/seo-guide”>
এতে সার্চ ইঞ্জিনের কাছে পেজটির পছন্দের URL পরিষ্কার থাকে।
ভবিষ্যতে কেউ ওই URL-এ tracking parameter যোগ করলেও মূল version কোনটি, সেটি বোঝানো সহজ হয়।
বড় সাইটে এটি বিশেষভাবে কার্যকর, কারণ একই কনটেন্টের নতুন parameter-ভিত্তিক URL কখন তৈরি হবে তা সব সময় আগে থেকে অনুমান করা যায় না।
একটি পেজে একাধিক ক্যানোনিক্যাল ট্যাগ কেন সমস্যা?
ধরা যাক একই পেজে রয়েছে:
<link rel=”canonical” href=”https://example.com/page-a”>
<link rel=”canonical” href=”https://example.com/page-b”>
এখানে কোন URL-টিকে মূল বলা হচ্ছে, সেটিই পরিষ্কার নয়।
এই ভুলটি প্রায়ই ঘটে যখন CMS নিজে canonical তৈরি করছে, আবার আলাদা SEO plugin বা custom template থেকেও আরেকটি canonical যোগ হচ্ছে।
এই ধরনের সমস্যা ধরতে শুধু browser-এ পেজ দেখে লাভ নেই। পেজের source বা rendered HTML পরীক্ষা করতে হবে।
Canonical target-এ noindex বা robots.txt block থাকলে কী হবে?
এটি খুবই সাধারণ একটি কারিগরি ভুল।
ধরা যাক Page A বলছে:
<link rel=”canonical” href=”https://example.com/page-b”>
কিন্তু Page B-তে রয়েছে:
<meta name=”robots” content=”noindex”>
Page A বলছে—“Page B আমার প্রধান সংস্করণ।”
Page B আবার বলছে—“আমাকে index করবেন না।”
দুই নির্দেশের উদ্দেশ্য পরস্পরবিরোধী।
সাধারণভাবে canonical target এমন একটি URL হওয়া উচিত, যেটিকে আপনি সত্যিই search result-এ রাখতে চান এবং যেটি crawler স্বাভাবিকভাবে দেখতে পারে।
Robots.txt দিয়েও canonicalization করার চেষ্টা করা উচিত নয়। Robots.txt মূলত crawling নিয়ন্ত্রণের জন্য; কোন duplicate URL প্রধান হবে তা নির্ধারণ করার জন্য নয়।
আর canonical URL যদি 404 দেয় কিংবা নিজেই অন্য URL-এ redirect হয়, সেটিও ভালো ব্যবস্থা নয়। সরাসরি সচল, চূড়ান্ত ও indexযোগ্য URL-কে canonical করা বেশি পরিষ্কার।
Pagination-এ Canonical কীভাবে ব্যবহার করবেন?
Category বা archive page-এ pagination থাকলে canonical নিয়ে পুরোনো অনেক পরামর্শ এখনও অনলাইনে ঘোরাফেরা করে।
উদাহরণ:
/category?page=1
/category?page=2
/category?page=3
এখানে Page 2 ও Page 3-কে অন্ধভাবে Page 1-এর canonical বানানো ঠিক নয়, যদি প্রতিটি page-এ আলাদা পণ্য বা লেখা থাকে।
Page 2 নিজেকে canonical করতে পারে:
<link rel=”canonical” href=”https://example.com/category?page=2″>
Page 3:
<link rel=”canonical” href=”https://example.com/category?page=3″>
একসময় pagination বোঝাতে rel=”next” ও rel=”prev” বহুল আলোচিত ছিল। Google-এর ক্ষেত্রে বর্তমানে এগুলো আগের মতো pagination signal হিসেবে ব্যবহৃত হয় না বলে জানা যায়। তাই পুরোনো SEO নির্দেশনা কপি করার বদলে বর্তমান Search Engine guidance দেখে pagination তৈরি করা ভালো।
মূল কথা হলো: Pagination-এর প্রতিটি URL সত্যিই আলাদা তালিকা দেখালে সেটিকে “একই duplicate page” ধরে প্রথম পেজে canonical করে দেওয়া উচিত নয়।
ক্যানোনিক্যাল ট্যাগে সাধারণ ভুল ও সমাধান
| ভুল | প্রভাব | সমাধান |
| ভুল পেজে canonical দেওয়া | Search Engine ভুল URL-কে মূল মনে করতে পারে বা tag উপেক্ষা করতে পারে | বিষয়বস্তু মিলিয়ে সঠিক URL নির্ধারণ করুন |
| Canonical target-এ noindex | পরস্পরবিরোধী indexing signal তৈরি হয় | indexযোগ্য URL-কে canonical করুন |
| Canonical target robots.txt-এ blocked | crawler পেজটি যাচাই করতে বাধার মুখে পড়ে | canonical URL crawlযোগ্য রাখুন |
| Redirect হওয়া URL canonical করা | অপ্রয়োজনীয় ধাপ ও অস্পষ্টতা তৈরি হয় | চূড়ান্ত URL সরাসরি canonical করুন |
| 404 URL canonical করা | মূল বলে দেখানো পেজই অনুপস্থিত | সচল 200 OK URL ব্যবহার করুন |
| একই পেজে একাধিক canonical | conflicting signal তৈরি হয় | একটি স্পষ্ট canonical রাখুন |
| অসম্পূর্ণ বা relative URL | domain বা protocol ভুল হওয়ার ঝুঁকি থাকে | পূর্ণ absolute URL ব্যবহার করুন |
| আলাদা কনটেন্টের পেজ canonical করা | গুরুত্বপূর্ণ পেজের indexing ক্ষতিগ্রস্ত হতে পারে | সত্যিকারের duplicate বা near-duplicate পেজেই ব্যবহার করুন |
| Canonical দিলেই URL index থেকে বাদ যাবে ধরে নেওয়া | বাস্তব ফল প্রত্যাশার সঙ্গে নাও মিলতে পারে | প্রয়োজন অনুযায়ী redirect বা noindex বিবেচনা করুন |
সবচেয়ে বিপজ্জনক ভুল: সব পেজে একই Canonical
ধরা যাক একটি ই-কমার্স সাইটে ১০ হাজার পণ্য রয়েছে।
Template-এর একটি ভুলের কারণে প্রতিটি product page-এ লেখা হলো:
<link rel=”canonical” href=”https://example.com/”>
অর্থাৎ প্রতিটি পণ্যই যেন home page-এর duplicate।
এটি কোনো duplicate content সমাধান নয়। বরং পুরো সাইটের indexing signal-এ বড় ধরনের গোলমাল তৈরি করতে পারে।
এ কারণেই নতুন template, theme, plugin বা site migration-এর পর canonical audit করা জরুরি। বিশেষ করে representative কিছু URL হাতে ধরে পরীক্ষা করা উচিত।
ক্যানোনিক্যাল ট্যাগ ঠিক আছে কি না পরীক্ষা করবেন কীভাবে?
প্রথমে পেজের HTML source দেখুন।
তিনটি বিষয় যাচাই করুন:
ক্যানোনিক্যাল ট্যাগ আছে কি না, একটি পেজে কতটি canonical আছে, এবং সেটি কোন URL-এ যাচ্ছে।
এরপর বিভিন্ন ধরনের URL থেকে নমুনা নিন। যেমন—
- সাধারণ article বা product page;
- tracking parameter-সহ URL;
- filter বা sort URL;
- HTTP বা www version;
- paginated URL;
- product variant।
প্রতিটির ক্ষেত্রে দেখুন canonical target সচল কি না, 200 OK দিচ্ছে কি না, indexযোগ্য কি না এবং অন্য কোথাও redirect করছে কি না।
তারপর internal link ও sitemap পরীক্ষা করুন। Canonical এক URL-এ যাচ্ছে অথচ পুরো সাইট অন্য URL-এ link করছে—এমন অসামঞ্জস্য থাকলে সেটিও ঠিক করতে হবে।
সার্চ কনসোলের URL inspection সুবিধা দিয়ে কোনো পেজের জন্য Google কোন canonical বেছে নিয়েছে এবং আপনি কোনটি ঘোষণা করেছেন—এই দুইয়ের পার্থক্যও দেখা যায়। ব্যবহারকারীর পর্দায় নির্দিষ্ট লেখা বা menu সময়ের সঙ্গে বদলাতে পারে, তাই মূল বিষয় হলো “declared canonical” ও Search Engine-এর নির্বাচিত canonical মিলছে কি না তা পরীক্ষা করা।
Google আমার Canonical না মানলে কী করব?
প্রথমেই canonical tag পাল্টাতে যাবেন না।
আগে দেখুন, Search Engine কেন অন্য URL-কে বেশি উপযুক্ত মনে করছে।
Internal link কোন URL-এ যাচ্ছে? Sitemap-এ কোন সংস্করণ আছে? HTTP থেকে HTTPS redirect ঠিক আছে? একটি পেজে একাধিক canonical তৈরি হয়েছে কি? দুই URL-এর বিষয়বস্তু সত্যিই একই, নাকি যথেষ্ট আলাদা?
Canonicalization আসলে শুধু HTML-এর এক লাইন code নয়। এটি পুরো সাইটের URL কাঠামোর অংশ।
Canonical, redirect, sitemap, internal link এবং protocol—সবকিছু একই পছন্দের URL-এর দিকে ইঙ্গিত করলে Search Engine-এর জন্য সিদ্ধান্ত নেওয়া সহজ হয়।
Duplicate URL ঠিক করতে প্রথমে এই সিদ্ধান্তটি নিন
Tracking URL analytics-এর জন্য দরকার, কিন্তু search result-এ মূল product URL চান? Canonical দিন।
কোনো utility page সার্চ ফলাফলে একেবারেই চান না? সেখানে noindex-এর উদ্দেশ্য আলাদা।
বাংলা ও ইংরেজি একই বিষয়ের আলাদা ভাষার সংস্করণ? সেগুলোকে duplicate ধরে এক ভাষায় canonical করে দেবেন না; সেখানে hreflang দরকার হতে পারে।
ক্যানোনিক্যাল ট্যাগের কাজ ডুপ্লিকেট পেজ লুকিয়ে ফেলা নয়। এর কাজ হলো একই বা খুব কাছাকাছি কনটেন্টের একাধিক URL-এর মধ্যে কোনটিকে প্রধান হিসেবে বিবেচনা করা উচিত, সে বিষয়ে পরিষ্কার ও সামঞ্জস্যপূর্ণ সংকেত দেওয়া।
তাই tag বসানোর আগে একটি প্রশ্ন করুন—এই URL-টি ব্যবহারকারীর জন্য আলাদাভাবে চালু থাকা দরকার, নাকি সত্যিই সরিয়ে দেওয়া উচিত?
এই প্রশ্নের উত্তর ঠিক হলে ক্যানোনিক্যাল, রিডাইরেক্ট না নোইনডেক্স—কোনটি ব্যবহার করবেন, সেই সিদ্ধান্তও অনেক সহজ হয়ে যায়।
প্রায়শই জিজ্ঞাসিত প্রশ্ন
একটি পেজে একাধিক ক্যানোনিক্যাল ট্যাগ থাকলে কী হয়?
ভিন্ন URL-এর দিকে নির্দেশ করা একাধিক canonical থাকলে পরস্পরবিরোধী সংকেত তৈরি হয়। Search Engine আপনার দেওয়া canonical উপেক্ষা করে নিজে অন্য URL বেছে নিতে পারে। CMS, theme ও SEO plugin পরীক্ষা করে একটি স্পষ্ট canonical রাখাই ভালো।
Canonical আর Redirect-এর মধ্যে পার্থক্য কী?
Redirect ব্যবহারকারী ও crawler-কে অন্য URL-এ নিয়ে যায়। Canonical বর্তমান URL চালু রাখে, তবে অন্য URL-কে পছন্দের সংস্করণ হিসেবে জানায়।
Duplicate URL আর আলাদাভাবে থাকার দরকার না থাকলে redirect ভালো। URL সচল রাখার বাস্তব কারণ থাকলে canonical উপযুক্ত হতে পারে।
ক্যানোনিক্যাল ট্যাগ দিলেই কি ডুপ্লিকেট পেজ Google থেকে বাদ যাবে?
নিশ্চিতভাবে নয়।
Canonical একটি শক্তিশালী ইঙ্গিত, কিন্তু এটি index থেকে URL সরানোর নিশ্চয়তা নয়। Search Engine অন্য signal বিচার করে ভিন্ন canonical বেছে নিতে পারে।
কোনো পেজ একেবারেই search result-এ না চাইলে উদ্দেশ্য অনুযায়ী noindex বা redirect-এর মতো ব্যবস্থা বেশি উপযুক্ত হতে পারে।
সব পেজে কি self-referencing canonical রাখা উচিত?
সাধারণ indexযোগ্য পেজে self-referencing canonical রাখা ভালো চর্চা।
তবে শুধু tag থাকলেই হবে না। Canonical URL-এর protocol, domain, path ও parameter সঠিক কি না সেটিও যাচাই করতে হবে।



