Google Search Console अनेकदा Next.js साइट्समध्ये soft 404 त्रुटी (errors) दर्शवते, ज्यामुळे crawl budget वाया जाऊ शकतो.
Soft 404 म्हणजे नक्की काय?
खरा 404 प्रतिसाद (response) HTTP 404 status code पाठवतो, ज्यामुळे ब्राउझर्स आणि बॉट्सना कळते की विनंती केलेली रिसोर्स अस्तित्वात नाही. याउलट, soft 404 मध्ये मजकूर (content) कमी किंवा अजिबात नसतानाही 200 OK status परत मिळतो. सर्च इंजिन्स या 200 status ला एक 'हेल्दी' पेज समजतात, तरीही ते पेज कोणतेही मूल्य प्रदान करत नाही. याचा परिणाम म्हणजे वाया गेलेले crawl cycles आणि Google ला मिळालेला असा संकेत की साइटवरील मजकुराचा दर्जा कमी आहे.
Next.js या जाळ्यात का अडकते?
Next.js चे dynamic routing तुम्हाला प्रत्येक URL हार्ड-कोड न करता /products/[slug] सारखी पेजेस सर्व्ह करण्याची सुविधा देते. जेव्हा एखादे उत्पादन (product) डेटाबेस मधून गायब होते, तेव्हा घटक (component) अजूनही रेंडर होतो आणि जर कोडमध्ये डेटा उपलब्ध नसल्याची तपासणी केली नाही, तर Next.js डिफॉल्टनुसार 200 OK ने उत्तर देते. जेव्हा वापरकर्ता URL चुकीचा टाइप करतो किंवा रिडिझाइननंतर जुने रूट्स (routes) शिल्लक राहतात, तेव्हाही असेच घडते. पेज लोड होते, पण त्यात कोणताही अर्थपूर्ण मजकूर नसतो, ज्यामुळे Search Console मध्ये soft-404 फ्लॅग ट्रिगर होतो.
साइट मालकांसाठी याचे धोके
- Crawl budget वाया जाणे – बॉट्स प्रत्येक साइटसाठी मर्यादित संख्येने विनंत्या (requests) राखून ठेवतात. Soft 404s मुळे हा कोटा संपतो, ज्यामुळे खऱ्या पेजेसच्या इंडेक्सिंगसाठी कमी संधी उरतात.
- SEO दंड (penalty) – वारंवार येणारे soft 404s सर्च इंजिन्सना सांगतात की साइटचा दर्जा कमी आहे.
- User experience वर परिणाम – रिकाम्या पेजवर येणारे व्हिजिटर्स लगेच निघून जातात (bounce), ज्यामुळे bounce rates वाढतात आणि कन्वर्जनवर (conversions) परिणाम होतो.
Soft 404 चे योग्य 404 मध्ये कसे रूपांतर करावे
1. अंगभूत notFound हेल्पर वापरा
- App Router –
next/navigationमधूनnotFoundइम्पोर्ट करा. डेटा फेच (fetch) केल्यानंतर, जर रिझल्ट उपलब्ध नसेल तरnotFound()कॉल करा. त्यानंतर Next.js खरा 404 status पाठवते. - Pages Router – जेव्हा डेटा फेचिंग अयशस्वी होते, तेव्हा
getStaticPropsकिंवाgetServerSidePropsमधून{ notFound: true }रिटर्न करा. जुन्या routing API साठी हे देखील तेच काम करते.
2. कस्टम 404 पेज तैनात (deploy) करा
डिफॉल्ट एरर पेज वापरकर्त्यांना गोंधळात टाकते. नेव्हिगेशन लिंक्स, सर्च बॉक्स किंवा संबंधित मजकुरासाठी सूचनांसह app/not-found.js (App Router) किंवा pages/404.js (Pages Router) तयार करा. एक चांगल्या प्रकारे डिझाइन केलेले 404 पेज व्हिजिटर्सना थेट बाहेर पाठवण्याऐवजी त्यांना साइटवरच ठेवते.
3. विस्कळीत (orphaned) रूट्स साफ करा
ज्या स्टॅटिक पेजेसचा आता कोणताही उपयोग नाही, ती डिलीट करा. जर एखादी फाईल शिल्लक असेल पण तिचा मजकूर रिकामा असेल, तर notFound प्रतिसाद जोडा किंवा ती फाईल पूर्णपणे काढून टाका. pages किंवा app डिरेक्टरीचे नियमित ऑडिट केल्यामुळे मृत (dead) URLs बाहेर पडण्यापासून रोखता येतात.
4. हलवलेल्या मजकुरासाठी कायमस्वरूपी (301) रिडायरेक्ट्स सेट करा
जेव्हा एखाद्या पेजचा URL बदलतो, तेव्हा 301 रिडायरेक्ट ब्राउझर्स आणि बॉट्सना सांगते की रिसोर्स कायमस्वरूपी हलवण्यात आला आहे. next.config.js मध्ये redirects की (key) अंतर्गत रिडायरेक्ट्स जोडा. यामुळे जुना URL मजकूर नसतानाही 200 status देण्यापासून रोखला जातो.
5. Search Console अलर्ट्सवर लक्ष ठेवा आणि त्यावर कारवाई करा
Soft 404s शोधण्यासाठी Google Search Console वारंवार तपासा. त्रुटी साचण्यापूर्वी त्या शोधण्यासाठी ऑटोमेटेड क्रॉलरचा वापर करा. प्रत्येक अलर्टला डेटा-फेच लॉजिक (data-fetch logic) तपासण्यासाठी एक संकेत म्हणून घ्या.
थोडक्यात सांगायचे तर
मजकूर न देता 200 OK परत देणारे पेज हळूहळू SEO मूल्य कमी करते. Next.js मध्ये, dynamic routes आणि न तपासलेले डेटा फेचिंगमुळे soft 404s सामान्य होतात, परंतु तुम्ही ते काढून टाकू शकता. notFound वापरा, उपयुक्त कस्टम 404 तयार करा, विस्कळीत रूट्स काढून टाका, 301 रिडायरेक्ट्स कॉन्फिगर करा आणि crawl budget वाचवण्यासाठी, रँकिंग टिकवून ठेवण्यासाठी आणि व्हिजिटर्सना साइटवर ठेवण्यासाठी Search Console मध्ये सतर्क राहा.
