Google Search Console ಹೆಚ್ಚಾಗಿ Next.js ಸೈಟ್‌ಗಳಲ್ಲಿ soft 404 ದೋಷಗಳನ್ನು (errors) ಗುರುತಿಸುತ್ತದೆ, ಇದು crawl budget ಅನ್ನು ವ್ಯರ್ಥ ಮಾಡಬಹುದು.

ವಾಸ್ತವವಾಗಿ soft 404 ಎಂದರೇನು

ನಿಜವಾದ 404 ಪ್ರತಿಕ್ರಿಯೆಯು (response) HTTP 404 status code ಅನ್ನು ಕಳುಹಿಸುತ್ತದೆ, ಇದು ಕೇಳಲಾದ ಸಂಪನ್ಮೂಲವು (resource) ಅಸ್ತಿತ್ವದಲ್ಲಿಲ್ಲ ಎಂದು ಬ್ರೌಸರ್‌ಗಳು ಮತ್ತು ಬಾಟ್‌ಗಳಿಗೆ ತಿಳಿಸುತ್ತದೆ. ಇದಕ್ಕೆ ವ್ಯತಿರಿಕ್ತವಾಗಿ, soft 404 ಎಂಬುದು ಯಾವುದೇ ವಿಷಯವನ್ನು (content) ನೀಡದೆ ಅಥವಾ ಅತ್ಯಲ್ಪ ವಿಷಯವನ್ನು ನೀಡಿ 200 OK status ಅನ್ನು ಹಿಂತಿರುಗಿಸುತ್ತದೆ. ಸರ್ಚ್ ಇಂಜಿನ್‌ಗಳು 200 ಅನ್ನು ಆರೋಗ್ಯಕರ ಪುಟವೆಂದು ಭಾವಿಸುತ್ತವೆ, ಆದರೆ ಆ ಪುಟವು ಯಾವುದೇ ಮೌಲ್ಯವನ್ನು ನೀಡುವುದಿಲ್ಲ. ಇದರ ಪರಿಣಾಮವಾಗಿ crawl cycles ವ್ಯರ್ಥವಾಗುತ್ತವೆ ಮತ್ತು ಸೈಟ್‌ನ ವಿಷಯದ ಗುಣಮಟ್ಟವು ಕಡಿಮೆಯಿದೆ ಎಂಬ ಸಂಕೇತವನ್ನು Google ಗೆ ನೀಡುತ್ತದೆ.

Next.js ಈ ಬಲೆಯಲ್ಲಿ ಏಕೆ ಸಿಲುಕುತ್ತದೆ

Next.js ನ dynamic routing ಪ್ರತಿ URL ಅನ್ನು hard-code ಮಾಡದೆ /products/[slug] ನಂತಹ ಪುಟಗಳನ್ನು ನೀಡಲು ಅನುವು ಮಾಡಿಕೊಡುತ್ತದೆ. ಡೇಟಾಬೇಸ್‌ನಿಂದ ಒಂದು ಉತ್ಪನ್ನವು ಮಾಯವಾದಾಗ, ಕಾಂಪೊನೆಂಟ್ (component) ಇನ್ನೂ ರেন্ডರ್ ಆಗುತ್ತದೆ, ಮತ್ತು ಕೋಡ್‌ನಲ್ಲಿ ಡೇಟಾ ಇಲ್ಲದಿರುವುದನ್ನು ಪರಿಶೀಲಿಸದಿದ್ದರೆ, Next.js ಡಿಫಾಲ್ಟ್ ಆಗಿ 200 OK ಗೆ ಪ್ರತಿಕ್ರಿಯಿಸುತ್ತದೆ. ಬಳಕೆದಾರರು URL ಅನ್ನು ತಪ್ಪಾಗಿ ಟೈಪ್ ಮಾಡಿದಾಗ ಅಥವಾ ಮರುವಿನ್ಯಾಸದ (redesign) ನಂತರ ಹಳೆಯ ರೂಟ್‌ಗಳು (routes) ಉಳಿದಿದ್ದಾಗಲೂ ಇದೇ ರೀತಿ ನಡೆಯುತ್ತದೆ. ಪುಟವು ಲೋಡ್ ಆಗುತ್ತದೆ, ಆದರೆ ಅದು ಯಾವುದೇ ಅರ್ಥಪೂರ್ಣ ವಿಷಯವನ್ನು ನೀಡುವುದಿಲ್ಲ, ಇದು Search Console ನಲ್ಲಿ soft-404 ಫ್ಲಾಗ್ ಅನ್ನು ಪ್ರಚೋದಿಸುತ್ತದೆ.

ಸೈಟ್ ಮಾಲೀಕರಿಗೆ ಇದರಿಂದಾಗುವ ಪರಿಣಾಮಗಳು

  • Crawl budget ವ್ಯರ್ಥವಾಗುವುದು – ಬಾಟ್‌ಗಳು ಪ್ರತಿ ಸೈಟ್‌ಗೆ ಸೀಮಿತ ಸಂಖ್ಯೆಯ ವಿನಂತಿಗಳನ್ನು (requests) ಮೀಸಲಿಡುತ್ತವೆ. Soft 404ಗಳು ಆ ಕೋಟಾವನ್ನು ಬಳಸಿಕೊಳ್ಳುತ್ತವೆ, ಇದರಿಂದ ನಿಜವಾದ ಪುಟಗಳು ಇಂಡೆಕ್ಸ್ ಆಗಲು ಕಡಿಮೆ ಅವಕಾಶಗಳು ಉಳಿಯುತ್ತವೆ.
  • SEO ದಂಡ (penalty) – ಪದೇ ಪದೇ ಬರುವ soft 404ಗಳು ಸೈಟ್‌ನ ಗುಣಮಟ್ಟ ಕಡಿಮೆ ಇದೆ ಎಂದು ಸರ್ಚ್ ಇಂಜಿನ್‌ಗಳಿಗೆ ತಿಳಿಸುತ್ತವೆ.
  • ಬಳಕೆದಾರರ ಅನುಭವಕ್ಕೆ (User experience) ಹೊಡೆತ – ಖಾಲಿ ಪುಟಕ್ಕೆ ಬರುವ ಸಂದರ್ಶಕರು ತಕ್ಷಣವೇ ಹೊರಟುಹೋಗುತ್ತಾರೆ (bounce), ಇದು bounce rates ಅನ್ನು ಹೆಚ್ಚಿಸುತ್ತದೆ ಮತ್ತು conversions ಅನ್ನು ಹಾನಿಗೊಳಿಸುತ್ತದೆ.

soft 404 ಅನ್ನು ಸರಿಯಾದ 404 ಆಗಿ ಪರಿವರ್ತಿಸುವುದು ಹೇಗೆ

1. ಅಂತರ್ಗತ notFound ಹೆಲ್ಪರ್ ಬಳಸಿ

  • App Routernext/navigation ನಿಂದ notFound ಅನ್ನು ಇಂಪೋರ್ಟ್ ಮಾಡಿ. ಡೇಟಾವನ್ನು ಪಡೆದ ನಂತರ, ಫಲಿತಾಂಶವು ಇಲ್ಲದಿದ್ದರೆ notFound() ಅನ್ನು ಕರೆಯಿರಿ. ಆಗ Next.js ನಿಜವಾದ 404 status ಅನ್ನು ಕಳುಹಿಸುತ್ತದೆ.
  • Pages Router – ಡೇಟಾ ಫೆಚ್ ಮಾಡುವಾಗ ವಿಫಲವಾದರೆ getStaticProps ಅಥವಾ getServerSideProps ನಿಂದ { notFound: true } ಅನ್ನು ರಿಟರ್ನ್ ಮಾಡಿ. ಹಳೆಯ ರೂಟಿಂಗ್ API ಗೂ ಇದು ಅದೇ ಕೆಲಸ ಮಾಡುತ್ತದೆ.

2. ಕಸ್ಟಮ್ 404 ಪುಟವನ್ನು ನಿಯೋಜಿಸಿ (Deploy)

ಡಿಫಾಲ್ಟ್ ಎರರ್ ಪುಟವು ಬಳಕೆದಾರರನ್ನು ಗೊಂದಲದಲ್ಲಿ ಬಿಡುತ್ತದೆ. ನ್ಯಾವಿಗೇಷನ್ ಲಿಂಕ್‌ಗಳು, ಸರ್ಚ್ ಬಾಕ್ಸ್ ಅಥವಾ ಸಂಬಂಧಿತ ವಿಷಯದ ಸಲಹೆಗಳೊಂದಿಗೆ app/not-found.js (App Router) ಅಥವಾ pages/404.js (Pages Router) ಅನ್ನು ರಚಿಸಿ. ಉತ್ತಮವಾಗಿ ವಿನ್ಯಾಸಗೊಳಿಸಲಾದ 404 ಪುಟವು ಸಂದರ್ಶಕರು ಸೈಟ್‌ನಿಂದ ಹೊರಹೋಗುವ ಬದಲು ಸೈಟ್‌ನಲ್ಲೇ ಇರುವಂತೆ ಮಾಡುತ್ತದೆ.

3. ಅನಾಥ ರೂಟ್‌ಗಳನ್ನು (Orphaned routes) ಸ್ವಚ್ಛಗೊಳಿಸಿ

ಇನ್ನು ಮುಂದೆ ಯಾವುದೇ ಉದ್ದೇಶವಿಲ್ಲದ ಸ್ಟ್ಯಾಟಿಕ್ ಪುಟಗಳನ್ನು ಅಳಿಸಿಹಾಕಿ. ಒಂದು ಫೈಲ್ ಉಳಿದಿದ್ದರೂ ಅದರ ವಿಷಯವು ಖಾಲಿ ಇದ್ದರೆ, notFound ಪ್ರತಿಕ್ರಿಯೆಯನ್ನು ಸೇರಿಸಿ ಅಥವಾ ಫೈಲ್ ಅನ್ನು ಸಂಪೂರ್ಣವಾಗಿ ತೆಗೆದುಹಾಕಿ. pages ಅಥವಾ app ಡೈರೆಕ್ಟರಿಗಳ ನಿಯಮಿತ ಆಡಿಟ್‌ಗಳು (audits) ಸತ್ತ (dead) URLಗಳು ಹೊರಬರದಂತೆ ತಡೆಯುತ್ತವೆ.

4. ಸ್ಥಳಾಂತರಗೊಂಡ ವಿಷಯಕ್ಕಾಗಿ ಶಾಶ್ವತ (301) ರಿಡೈರೆಕ್ಟ್‌ಗಳನ್ನು ಹೊಂದಿಸಿ

ಪುಟದ URL ಬದಲಾದಾಗ, 301 ರಿಡೈರೆಕ್ಟ್ ಸಂಪನ್ಮೂಲವು ಶಾಶ್ವತವಾಗಿ ಸ್ಥಳಾಂತರಗೊಂಡಿದೆ ಎಂದು ಬ್ರೌಸರ್‌ಗಳು ಮತ್ತು ಬಾಟ್‌ಗಳಿಗೆ ತಿಳಿಸುತ್ತದೆ. next.config.js ನಲ್ಲಿ redirects ಕೀ ಅಡಿಯಲ್ಲಿ ರಿಡೈರೆಕ್ಟ್‌ಗಳನ್ನು ಸೇರಿಸಿ. ಇದು ಹಳೆಯ URL ಯಾವುದೇ ವಿಷಯವಿಲ್ಲದೆ 200 ಅನ್ನು ಹಿಂತಿರುಗಿಸುವುದನ್ನು ತಡೆಯುತ್ತದೆ.

5. Search Console ಅಲರ್ಟ್‌ಗಳನ್ನು ಗಮನಿಸಿ ಮತ್ತು ಕ್ರಮ ಕೈಗೊಳ್ಳಿ

soft 404ಗಳನ್ನು ಪತ್ತೆಹಚ್ಚಲು ಆಗಾಗ್ಗೆ Google Search Console ಅನ್ನು ಪರಿಶೀಲಿಸಿ. ದೋಷಗಳು ಹೆಚ್ಚಾಗುವ ಮೊದಲು ಹೊಸ ದೋಷಗಳನ್ನು ಪತ್ತೆಹಚ್ಚಲು ಆಟೋಮೇಟೆಡ್ ಕ್ರಾಲರ್ ಬಳಸಿ. ಪ್ರತಿ ಅಲರ್ಟ್ ಅನ್ನು ಅಡಿಗಟ್ಟಿನ ಡೇಟಾ-ಫೆಚ್ ಲಾಜಿಕ್ ಅನ್ನು ಪರಿಶೀಲಿಸಲು ಒಂದು ಸೂಚನೆಯಾಗಿ ಪರಿಗಣಿಸಿ.

ಸಾರಾಂಶ

ಯಾವುದೇ ವಿಷಯವನ್ನು ನೀಡದೆ 200 OK ಅನ್ನು ಹಿಂತಿರುಗಿಸುವ ಪುಟವು SEO ಮೌಲ್ಯವನ್ನು ಮೌನವಾಗಿ ಕುಂದಿಸುತ್ತದೆ. Next.js ನಲ್ಲಿ, dynamic routes ಮತ್ತು ಪರಿಶೀಲಿಸದ ಡೇಟಾ ಫೆಚ್‌ಗಳು soft 404ಗಳನ್ನು ಸಾಮಾನ್ಯವಾಗಿಸುತ್ತವೆ, ಆದರೆ ನೀವು ಅವುಗಳನ್ನು ಹೋಗಲಾಡಿಸಬಹುದು. crawl budget ಅನ್ನು ರಕ್ಷಿಸಲು, ರ‍್ಯಾಂಕಿಂಗ್‌ಗಳನ್ನು ಉಳಿಸಿಕೊಳ್ಳಲು ಮತ್ತು ಸಂದರ್ಶಕರು ಸೈಟ್‌ನಲ್ಲೇ ಇರುವಂತೆ ಮಾಡಲು notFound ಬಳಸಿ, ಉಪಯುಕ್ತ ಕಸ್ಟಮ್ 404 ಅನ್ನು ನಿರ್ಮಿಸಿ, ಅನಾಥ ರೂಟ್‌ಗಳನ್ನು ತೆಗೆದುಹಾಕಿ, 301 ರಿಡೈರೆಕ್ಟ್‌ಗಳನ್ನು ಕಾನ್ಫಿಗರ್ ಮಾಡಿ ಮತ್ತು Search Console ನಲ್ಲಿ ಜಾಗರೂಕರಾಗಿರಿ.