خطای 404 not found چیست و چگونگی رفع آن
- سه شنبه ۱۵ مرداد ۱۳۹۸
- 854 بازدید
- تکنولوژی
خطای 404 not found یکی از خطاهای رایج در صفحات وب است که علت اصلی آن پیدا نشدن آدرس مورد نظر است. و همینطور یکی از شایعترین خطاهای موجود در هنگام جستجوی شبکه گسترده وب و دسترسی به منابع و مطالب مختلف ارور 404 Not Found میباشد که از نمایش محتویات بستر مربوطه بهصورت کامل جلوگیری به عمل آورده و صفحهای دربردارنده برخی از توضیحات بدیهی و تکراری را نمایان میکند، در این مقاله به بررسی این خطا و راههای رفع آن نظیر رفرش کردن صفحه، چک کردن دوبارهی آدرس و ... خواهیم پرداخت.
خطای 404 Not Found همانطور که از عنوان آن پیداست اغلب زمانی بروز پیدا میکند که صفحه و یا محتوای درخواست شده از جانب کاربر در میان منابع وبسایت و یا سرویسدهنده آن وجود نداشته باشد که از جمله اصلیترین دلایل آن نیز میتواند به تایپ اشتباه نشانی محتوا و یا خرابیهای دائمی یا لحظهای سرور اشاره کرد. خطای فوق در مقایسه با دیگر ارورهایی همچون 403 Forbidden و 502 Bad Gateway از سادگی بسیار بیشتری برخوردار بوده و آنچنان توضیحات پیچیدهای را در پس پرده خود نهفته ندارد، علاوه بر آن دستهبندی مشکل در کلاس خطاهای 4XX از همان ابتدا به فرد تفهیم مینماید که علت این مهم در بسیاری از موارد به وجود مشکلی از جانب کاربر بازگردانی شده و باید از سمت وی مورد تصحیح قرار گیرد (البته در نه تمام اوقات).
شما هم تا به حال هنگام وبگردی با تصویر بالا روبهرو شدهاید؟ خطای 404 not found یا به شکل مختصر خطای ۴۰۴، یکی از صفحاتی است که به شکل گستردهای در وب ظاهر میشود؛ اما این خطا به چه معناست و چگونه میتوان از شر آن خلاص شد؟ در ادامه بیشتر به این خطا و علل آن میپردازیم.
وبسایتهای مختلف با توجه به نحوه طراحی و توسعه بخش ارور هندلینگ بستر خود ممکن است صفحات دربردارنده اشکال و توضیحات مختلفی را برای فرد مراجعهکننده در هنگام بروز خطا به نمایش در آورده و این مهم بهصورت کلی از استاندارد ثابتی برخوردار نمیباشد، بر همین اساس مشاهده عبارات و عناوینی همچون 404 ،404 Resource not found ،Error 404 ،HTTP 404 ،404 Not Found ،Error 404 Not Found ،404 Page Not Found ،404 File or Directory Not Found و ... در وبسایتهای مختلف امری دور از ذهن نیست، اما کد خطای 404 در قالب تمامی آنها یکسان میباشد. علاوه بر آن علت نمایش کد 404 در خطای فوق، مقدار پیشفرضی است که از جانب پروتکل انتقال داده فرامتنی (HTTP) جهت نمایش مشکل ایجاد شده منتسب گشته است، در صورت تغییر پروتکل ممکن است کد خطا نیز دگرگونیهایی را به خود نظاره نماید.
خطای 404 not found چیست؟
خطای 404 not found یا پیام سرور Server Not Found یک کد پاسخ استاندارد پروتکل انتقال پیام (HTTP) در ارتباطات شبکه کامپیوتری است تا نشان دهد که مرورگر قادر به برقراری ارتباط با یک سرور خاص هست اما سرور نمیتواند چیزی که درخواست شده بود را پیدا کند. زمانی که یک کاربر تلاش می کند یک لینک خراب یا مرده را پیگیری کند سرور میزبان وب سایت معمولا یک صفحه وب 404 Not Found ایجاد میکند. از این رو خطای ۴۰۴ یکی از خطاهای قابل تشخیص در شبکه جهانی وب است.
همانطور که پیشتر نیز اشاره شد، علت بروز خطاهای موجود در کلاس 4XX در بسیاری از موارد با وجود مشکلی در سمت مشتری یا به عبارتی دیگر کاربر مرتبط میباشد که خطای 404 Not Found نیز از این قاعده مستثنی نیست (هرچند که ادعای فوق در تمامی موارد از درستی برخوردار نبوده و گاهی اوقات دلیل اصلی آن مستقیماً به مشکلات وبسایت و یا سرویسدهنده آن بازگردانی میگردد)، بر همین اساس ادامه نوشته را با پرداختن به برخی از شایعترین نکات موجود و دستورالعملهای اجمالی جهت رفع آن میپردازیم.
اطمینان از تایپ صحیح دامنه وبسایت
همانطور که پیشتر نیز اشاره شد، بخش عظیمی از دلایل نمایش خطای 404 Not Found از وجود اشتباهات تایپی در دامنه وبسایتهای مورد مراجعه نشأت میگیرد که مرتفعسازی آن نیز بهراحتی هر چه تمامتر انجام میپذیرد. وجود اشتباهی بسیار کوچک، حتی به اندازه یک واج یا کاراکتر در نشانیهای مختلف به هدایت سرویسدهنده به صفحهای متفاوت و خارج از منابع تحت دسترس منتهی میشود که این خود به بروز خطای مذکور منتهی میگردد، بنابراین توصیه میشود تا در هنگام نمایش ارور فوق، در ابتدا و بدون انجام هرگونه اقدام دیگری، دامنه وبسایت مربوطه را بررسی و از تایپ صحیح آن اطمینان حاصل کنید.
بارگذاری مجدد وبسایت
درصورتیکه بروز خطا ناشی از مشکلاتی نظیر اتمام ظرفیت سرویسدهنده، افزایش سر بار ترافیکی و ... باشد، بارگذاری مجدد وبسایت با استفاده از کلید میانبر F5 (در بسیاری از نرمافزارهای مرورگر) و یا آیکون مربوط به این مهم در نوار درج آدرس ممکن است به رفع مشکل و نمایش محتویات درخواست شده منتهی شود. امتحان این مهم بهعنوان یکی از راهحل موجود پیشنهاد میشود، اما مفید واقع گشتن به هیچ عنوان نمیتواند مورد تضمین قرار گیرد.
جستجوی مطالب
برخی از وبسایتهای مختلف بهمنظور افزایش ضریب امنیت و دیگر دلایل مربوطه لینکهای داخلی مطالب خود را بهصورت توصیفی و بعضاً بسیار طولانی به نمایش در میآورند که بررسی نشانی در اینگونه موارد بهعنوان یک گزینه دیگر نمیتواند مطرح باشد. علاوه بر آن تغییر لینکهای داخلی وبسایتها و عدم ارتباط نشانی جدید با قدیم در نمایش خطای نامبرده نیز تأثیراتی را به خود اختصاص میدهد.
درصورتیکه نمایش خطای 404 Forbidden ناشی از مشکلات اشاره شده در بخش فعلی میباشد، انجام جستجویی ساده با استفاده از موتور داخلی وبسایت جهت دسترسی به مطلب مورد نظر پیشنهاد میشود؛ علاوه بر آن استفاده از عملگر :site موتور جستجوگر بسیار قدرتمند گوگل جهت معطوف نمودن نتایج جستجو به وبسایت مورد نظر (در صورت ضعف قابلیت جستجوی محتوا توسط وبسایت و یا عدم برخورداری از آن) نیز جهت جلوگیری از اتلاف زمان میتواند بسیار مفید واقع گردد. جهت کسب اطلاعات بیشتر به مقاله آموزشی زیر مراجعه نمایید:
پاکسازی اطلاعات کش نرمافزار مرورگر
بسیاری از نرمافزارهای مرورگر قدرتمند و محبوب حال حاضر بهمنظور افزایش سرعت دسترسی به محتوا اقدام به حفظ و ذخیرهسازی بخشی از دادههای وبسایتهای مراجعه شده در قالب اطلاعات کش و فایلهای کوکی مینمایند. اگر مدیریت وبسایت مورد نظر لینکهای برخی از محتویات خود را در طی مراجعه بازدیدکنندگان با تغییراتی همراه سازد، نشانی مطالب مربوطه در قالب اطلاعات کش مرورگر باقی میمانند که این مهم منجر به نمایش خطای مذکور در طی دفعات مراجعه آینده، حتی با ارتباط نشانیهای جدید با قدیم از جانب مدیریت میشود.
در اینگونه مواقع پیشنهاد میشود تا با استفاده از روش سوم به جستجوی مطالب مورد نظر از طریق وبسایت مربوطه پرداخته و یا درصورتیکه تعداد رکوردهای موجود بسیار فراوان میباشند، اطلاعات کش نرمافزار مرورگر را جهت تصحیح یکباره تمامی لینکها حذف نمایید.
تغییر سرویسدهنده DNS
درصورتیکه وبسایت بهخصوصی خطای 404 Not Found را در هنگام دسترسی به نشانیهای (URL) متعدد از خود نمایان میسازد، اما همان محتوا با استفاده از دیگر شبکههای اینترنتی قابل دسترسی میباشد، بنابراین احتمال مسدودسازی وبسایت مربوطه از جانب شرکت ارائهدهنده خدمات اینترنتی (ISP) و یا عملکرد ناصحیح سرورهای DNS آنها با قوت بیشتری همراه میشود. برای این منظور پیشنهاد میشود تا سرویسدهنده DNS خود را به یکی از نمونههای سوم شخص (مانند گوگل) تغییر و سپس اقدام به دسترسی مجدد به بستر مورد نظر بنمایید.
بررسی اجمالی
هنگام برقراری ارتباط از طریق HTTP، یک سرور برای پاسخ به درخواست (مانند یک درخواست مرورگر وب برای یک صفحه وب)، به یک کد پاسخ عددی و پیام اختیاری، اجباری یا غیرقانونی (بر اساس کد وضعیت) نیاز دارد. مثلا در سطح HTTP، کد مربوطه، پاسخ ۴۰۴ را به همراه یک عبارت بیان کننده دلیل که توسط کاربر قابل تشخیص باشد(به عنوان مثال عبارت «یافت نشد») نشان میدهد. خطاهای ۴۰۴ نباید با خطاهای DNS اشتباه گرفته شوند. خطاهای DNS وقتی آدرس داده شده مربوط به نام سروری است که وجود ندارد ظاهر میشود اما یک خطای ۴۰۴ نشان میدهد که سرور خودش پیدا شد، اما سرور قادر نبود که صفحه درخواستی را بازیابی کند.
نمایش صفحهی خطای اختصاصی
سرورهای وب معمولا میتوانند پیکربندی شوند تا صفحه خطای ۴۰۴ را به صورت سفارشی نمایش دهند. از جمله توضیحاتی که در قالب تنظیمات سفارشی نمایش داده میشوند، اطلاعاتی در مورد سایت، نام وبسایت مادر و بعضی اوقات نقشه سایت، فرم جستجو و ... هستند. البته ممکن است این صفحه سفارشیسازی شده کمی دیرتر و با تاخیر بالا بیاید.
بسیاری از سازمانها صفحهی خطای ۴۰۴ را به عنوان یک فرصت برای تزریق طنز به وب سایت جدی خود تلقی میکنند. به عنوان مثال، مترو بریتانیا خرس قطبی را در یک اسکیت بورد نشان میدهد و آژانس توسعه وب Left Logic یک برنامه نقاشی ساده را در این صفحه خطا نشان میدهد.
دنبال کردن و چک کردن خطای ۴۰۴
درست است که طراحی یک خطای ۴۰۴ زیبا و متفاوت میتواند موجب بیشتر شدن امتیاز یک سایت در جستوجوها شود، اما به طور کلی در یک سایت نباید با این خطا برخورد کرد و نشان داده شدن این خطا در یک سایت موجب تاثیر منفی بر سئوی آن میشود زیرا شما به عنوان طراح یک سایت نباید در سایتتان آدرسهایی داشته باشید که دارای محتوا نیستند. بنابراین از منظر طراح یک سایت این خطا نباید تا حد امکان رخ دهد.
به عنوان کاربر هنگام روبهرو شدن با خطای ۴۰۴ چه باید بکنیم؟
همانطور که گفته شد، خطای ۴۰۴ به معنای این است که آدرس داده شده در وب وجود ندارد. بنابراین میتوان برای اصلاح آن چند کار انجام داد.
۱. بارگذاری مجدد صفحه
صفحه را دوباره بارگذاری (رفرش) کنید. گاهی این خطا بدون دلیل خاصی رخ میدهد و تنها با یک یا چند بار رفرش کردن صفحه مرورگر یا با استفاده از دکمهی f5 میتوان از این خطا گذشت و به صفحهی مورد نظر رسید.
۲. چک کردن آدرس صفحه وب
دوم؛ آدرس صفحه وب را دوباره چک کنید و مطمئن شوید که آن را درست وارد کردهاید. ممکن است در آدرس غلطهای املایی وجود داشته باشد، حتی ممکن است در لینکهایی که در خود سایتها گذاشته شده هم غلطهای املایی وجود داشته باشد.
۳. کاهش سطح صفحات
در آدرس نوشته شده، سطح صفحات را کم کنید. به عنوان مثال اگر در آدرس بار عبارت https://setare.com/fa/news/81314 را وارد کردید و به خطای ۴۰۴ برخورد کردید، دوباره برگشته و قسمت آخر را پاک کرده و به صفحهی قبلی آن بروید (https://setare.com/fa/news) و در آنجا به دنبال صفحهی مورد نظر خود بگردید.
۴. جستجو در موتورهای جستجوگر
آدرس مورد نظر را با کمک عبارت کلیدی آن در یکی از موتورهای جستوجوگر جستوجو کنید. بعضی اوقات موتورهای جستوجو خیلی سریعتر ما را به سمت آدرس مورد نظرمان راهنمایی میکنند.
۵. پاک کردن حافظه کش
حافظه کَش (cache) مرورگر خود را پاک کرده و دوباره آدرس مورد نظر را وارد کنید. برخی مواقع آدرسهای اشتباه در کش مرورگر قرار گرفته و ما را فریب میدهند.
۶. تماس با مدیران وبسایت
اگر تمام موارد بالا را انجام دادید و همچنان با خطای ۴۰۴ مواجه شدید، با گرداننده سایت تماس بگیرید و پیگیری کنید. احتمالا صفحه مورد نظر شما از روی وب پاک شده است و تنها با کمک گرداننگان سایت میتوانید به مطلب مورد نظرتان دست پیدا کنید.
اولین دیدگاه را شما برای این آگهی ثبت کنید