هر گاه شما از یک صفحه وب دیدن می کنید یک سری جابجایی اطلاعات (مانند یک سری کاغذ بازی مشخص) بین مرورگر شما و سرور سایتی که به آن مراجعه کرده کرده اید صورت می گیرد.
مرورگر شما این تبادل اطلاعات را به صورت یک درخواست برای سرور ارسال می کند تا به اطلاعاتی مانند: متن، تصویر، کد و ... دسترسی پیدا می کند.
یک سرور همیشه هوشیار است و به محض اینکه شما درخواست خود را برای آن فرستادید به شما میگوید: "درخواستی که فرستادی را دریافت کردم و این ها مواردی هستند که میتوانم تا چند لحظه دیگر به تو نشان دهم"
این پیام کوتاه از سرور هم به مرور گر و هم به کاربر که منتظر سرور هستند کمک می کند که با خیال راحت چند لحظه صبر کنند.
کد هایی که توسط سرور پاسخ داده می شود ممکن است در اولین نگاه به صورت یک خطا برای ما ظاهر شوند؛ به طور کلی می توان گفت خطا ها وقتی ظاهر می شوند که استفاده کننده از وب منتظر دیدن چنین صفحه ای نیست. ولی باید در نظر داشته باشیم که برای هر پاسخی که قرار است از سرور به ما برسد دستور العمل خاصی وجود دارد که به صورت کد برای ما نمایش داده می شود که به آنها کد های وضعیت می گویند.
چرا باید کد های وضعیت وب سایت را بدانیم؟
اگر در کسب و کار هایی که به دنیای وب مربوط می شوند فعالیت داشته باشید باید بتوانید با زبان دنیای وب آشنایی داشته باشید، کد های وضعیت زبان رایج بین سرور و استفاده کننده یا کلاینت هستند که شما به عنوان یک فرد فعال در این زمینه باید بتوانید با زبان وب ارتباط برقرار کنید و منظور آنرا بفهمید.
بگذارید در حد یک جمله از بحث خارج شویم و بگوییم که "ریشه تمام مشکلات دنیا در کج فهمی است". پس می توان نتیجه گرفت که شما با نفهمیدن یا اشتباه متوجه شدن منظور سرور خود به مشکل برخواهید خورد و نمی توانید مشکل خود را تشخیص دهید.
محدوده ی کد های وضعیت
یک کد وضعیت همیشه با یک کد همراه است که معنای طبیعی و خاص خود را نشان می دهد. هر کسی که در زمینه سئو فعالیت می کند و یا قصد فعالیت دارد باید این کد ها را با دل و جان حفظ باشد و بداند که هر کد چه منظوری دارد و چه پیامی را با خود حمل می کند.
1xxs _ پاسخ های اطلاعاتی
سرور دارد به درخواست شما فکر میکند.
2xxs _ موفقیت
درخواست به شکل موفقیت آمیز پیاده سازی شد و سرور جواب مورد نظر را به مرورگر تحویل داد.
3xxs _ ریدارکت کردن (راهنمایی مجدد)
این کد ها که معمولا در فهمیدنشان مشکل پیش می آید، در خواست های قدیمی کلاینت را به روز می کند. درخواست فهمیده شد اما به دلایلی شما ریدایرکت شدید.
4xxs _ خطای ارسال کننده یا کلاینت
این خطا به ما می گوید که درخواست اشتباه است و این خطا مربوط به کلاینت می باشد و ربطی به سرور ندارد. بیشترین جایی که این خطا دیده می شود، وقتی است که یک لینک دهی خراب صورت گرفته باشد و شما روی لینکی کلید کنید که خراب شده است و صفحه دیگر وجود ندارد.
5xxs _ خطای سرور
کاربر یک درخواست قابل قبول ارائه داد اما سرور نتوانست این درخواست را تکمیل کند.این خطا زمانی به چشم می آید که مشکل از سرور باشد، برای حل کردن این مشکل معمولا به یک توسعه دهنده وب یا web developer نیاز پیدا خواهد کرد.
مهم ترین کد های وضعیت برای سئو
برای تعداد زیادی از کد های وضعیت، به صورت توافقی معنی خاصی در نظر گرفته شده است تا افراد حرفه ای در عرصه وب بتوانند یک سری پاسخ های استاندارد سازی شده در مورد این مشکلات را با هم به اشتراک بگذارند. این کد ها معمولا زمانی ظاهر می شوند که شما در تجربه ای که بوجود آمده است (که میتوان مشکل باشد یا می تواند یک پاسخ عادی) دخالت داشته باشید.
200-OK
اعلام شدن کد وضعیت 200 توسط سرور این معنی است که "همه چیز روبه راه و عالیست! من در حال فرستادن اطلاعاتی هستم که در خواست کرده بودید."
به عبارتی می توان گفت این کد به صورت طبیعی ایده آل است! چرا؟ چون هر موقع صفحه ای بر روی مرورگر شما با موفقیت بارگذاری می شود این کد را دریافت می کند. کد وضعیت 200 به خزنده های گوگل اعلام می کند که من می خواهم این لینک را در فهرست گوگل نگه دارم.
-permanent redirect301
این کد وضعیت به درخواست کننده یا کلاینت این آگاهی را می دهد که: "اطلاعاتی که الان میخواهید الان در جای دیگری ساکن است."
وظیفه ی این کد این است که وقتی شما به یک لینک مراجعه می کنید، شما را به جای دیگری که محتویات آن لینک در آنجاست میبرد. از این ریدایرکت می توان زمانی استفاده کرد که بازدید کنندگان سایت شما به یک ورژن اشتباهی از آدرس شما لینک شده اند و شما قصد دارید آنها را به مسیر درست که وب سایت اصلی و سالم شما باشد راهنمایی کنید. مثلا فرض کنید که وب سایت شما دو ورژن داشته باشد یکی بدون www و یکی با www ؛ و وب سایت اصلی شما باwww باشد، باید برای ورژن بدون www ریدایرکت 301 تعریف کنید تا بینندگان آنرا به سمت وب سایت اصلی شما هدایت کند.
-temporary redirect302
ریدایکت های موقت در جواب درخواست کلاینت اعلام میکنند که: "اطلاعاتی که می خواستید پیدا شد، ولی فعلا اینجا قرار ندارد"
بعد از این موضوع سرور یک درخواست جدید را شروع می کند که پاسخ آن به صورت کد 200 و از یک مکان جدید و قابل دسترس باشد. اگر موتور جستجو وارد آدرسی که ریدایرکت 302 روی آن سوار است شود، مکان اصلی درخواست شما در فهرست ایندکس گوگل به همان صورت که هست حفظ می شود.
-Not Modified304
کد وضعیت 304 کلاینت را مجددا به فایلی که قبلا گرفته بوده است میبرد.
به عبارتی وقتی به این کد وضعیت بر می خورید سرور به شما می گوید: "درخواست شما را دریافت کردم، اما اطلاعاتی که می خواهید از دفعه ی آخری که آنرا دیده اید تغییری نکرده است. بیا تا وقت تلف نکنیم و فایلی که قبلا از همین جا دانلود کرده اید را در اختیارتان قرار بدهم"
وقتی می شنوید که "لطفا حافظه کش خود را پاک کرده تا تغییرات را ببینید" یا در کل در مورد خالی کردن حافظه کش صحبت می کنید. شما به کد 304 برخورده اید. به تعادل رساندن حافظه کش با استفاده از محتوای تازه هنر بسیار پیچیده ای است که می توان در مورد آن بک مقاله ی کامل و دقیق نوشت.
Forbidd-403
کد وضعیت 403 به به این صورت است که سرور به شما می گوید: "من در خواست شما را متوجه شدم؛ اما اطلاعاتی که می خواهید را به شما نمی دهم"
زمانی به این خطا برمی خوردید که شما به عنوان کلاینت، جایگاه دسترسی به سرور را ندارید.
زمانی که یک کلاینت غیر مجاز سعی می کند که به قسمت های مهم و حساس یک وب سایت دسترسی پیدا کند، این کد کاملا به جا و صحیح ظاهر می شود. این کد معمولا به عنوان دستور به موتور های جستجو ارسال می شود که صفحه ی مورد نظر را Crawl نکنند.
Not found-404
در این وضعیت سرور به شما اعلام میکند که من این اطلاعات را پیدا نکردم و احتمالا اصلا چنین چیزی وجود ندارد.
این کد وضعیت که یکی از شناخته شده ترین کد هاست؛ این وظیفه را بر عهده دارد که در صورتی که اطلاعات مورد نظر یک کلاینت یافت نشد این موضوع را به او اعلام کند و اورا از سردرگمی بیرو بیاورد.
شاید با خود فکر کنید که این کد وضعیت به هیچ دردی نمی خورد، چرا که هیچ صفحه ای را در اختیار مخاطب قرار نمی دهد. ولی یکی از مزایای کد وضعیت 404 این است که به خزنده های موتور های جستجو اعلام میکند که اینجا آخر مسیر است و برو و یک مسیر جدید پیدا کن!
ولی یکی از مطالبی که باید همیشه به یاد داشته باشید که 404 یک خطا در مورد سرور نیست! بلکه به سایت شما و عملکردی که در خصوص سایت خود داشتید بر میگردد و دلیل آن معمولا استفاده از لینک هایی که اشتباها وارد شده اند یا از رده خارج است، پس باید در جریان باشید که حل کردن این موضوع بر عهده شماست.
برای مطالعه بیشتر در این مورد می توانید صفحات 404 را از بین ببرید را مطالعه کنید
Gone-410
این کد وضعیت نحوه ی بیان سرور برای این موضوع است که "اطلاعاتی که می خواهید قبلا اینجا بوده، ولی دیگر نیست"
این کد به موتور های جستجو و مراجعه کنندگان از سایر وب سایت ها می گوید که اطلاعات روی این لینک فقط به مدت محدودی وجود داشته و آنها باید این صفحه را از فهرست لینک ها و فهرست ایندکس خود پاک کنند.
خزنده های موتورهای جستجو همیشه یک لینک با کد وضعیت 404 را تست خواهند کرد و به سراغش خواهند آمد، ولی 410 بعد از اینکه عمل خزش روی آن انجام شد، مطلقا به سمت اش نمی آید؛ چون کد 410 برای موتور های جستجو و توسعه دهندگان وب دقیقا به معنی یک صفحه ی مرده است.
Internal Server Error-500
این کد نشان میدهد مشکل از سرور است. این وضعیت ینی در دسترسی به سرور شما مشکلی پیش آمده است. در این وضعیت کاربر و ربات ها از دست میروند. موتورهای جستجو به سایت هایی دارند که به آنها رسیدگی میشود و از این دسته مشکلات در آنها رخ نمیدهد پس بهتر است در وقوع این مشکل هرچه سریعتر آن را بررسی و رفع کنید.
Service unavailable-503
هر گاه به این کد برخورد کردید، بر خلاف بقیه کد های وضعیت سرور به شما چیزی نمی گوید، چون این کد وضعیت معمولا در مواردی استفاده می شود که بار اضافی از سرور کشیده شده و قابلیت پاسخ گویی به کلاینت را ندارد. این بار اضافی می تواند نتیجه یک راه اندازی اشتباه یا بالا رفتن زیاد از حد ترافیک یک وب سایت باشد. این مشکل همانند مشکل 5xx باید از طریق متخصصان سرور حل شود و کلاینت هیچ دخالتی در این امر نمی تواند داشته باشد.
نتیجه گیری در مورد کد های وضعیت وب سایت یا کد ها وضعیت HTTP
کد های وضعیت پاسخ دهی یکی از مهمترین و کارآمد اطلاعاتی هستند که در مورد روند به اشتراک گذاری سرور به ما خواهد داد. دانستن اینکه هر کدام از این کدها به چه معنی است و چه منظوری دارد. حتی اگر وظیفه شما حل کردن این مشکلات نباشد، دانستن مفهوم هر کدام از این کدها چه معنی دارد می تواند شما را از سردرگمی بیرون بیاورد.