رفع خطای 404 not found

چگونه این خطا را سمت سایت وردپرسی یا سمت مرورگر حل کنیم؟

رفع خطای 404 not found error
رفع خطای 404 not found error

خطای 404 که جز معروف ترین خطاهای سمت کاربری است را قصد داریم در این مقاله به نحوه رفع و حل آن بپردازیم. این خطا در سایت GTmetrix با عنوان Avoid HTTP 404 (Not Found) error درج شده، برای رفع ارور 404 ادامه مقاله را مطالعه بفرمایید.

خطای 404 Not Found Error چیست

ارور 404 Not Found Error به معنای پیدا نشدن است، خطای 404 یک کد وضعیت از پروتکل HTTP از نوع خطاهای مهم رده 4XX است به این معنا که صفحه‌ی وب‌سایتی که شما در پی دسترسی به آن هستید، بر روی سِرورش قابل دسترسی نیست. ارور 404 که معنای یافت نشد را دارد، غالباَ به وسیله‌ی وب‌سایت‌ها، سفارشی‌سازی می‌شوند. یعنی برخی وب سایت ها نحوه نمایش ارور ۴۰۴ را تغییر داده و بر اساس سیاست‌های داخلی آن سایت باز طراحی می‌شود.

برخی از راه‌های متداولی که از طریق آن می‌توانید با خطای 404 را حل کنید ما در این مقاله به آن اشاره خواهیم کرد.

نمایش ارور 404 Not Found شکل های مختلفی دارد:

 

404 Error
404 Not Found
Error 404
The requested URL [URL] was not found on this server
HTTP 404
404 Error
Error 404 Not Found
404 File or Directory Not Found
HTTP 404 Not Found
404 Page Not Found

 

خطاهای مربوط به ارور 404 ، ممکن است در هر مرورگر یا سیستم عاملی پدیدار شود. بیشتر خطاهای 404 Not Found ، مربوط به مرورگر اینترنت، درست همان گونه که صفحات وب، (در مرورگر) نمایش داده می‌شوند، نشان داده می‌شوند.

در مرورگر اینترنت اکسپلورر (IE)  خطای “The webpage cannot be found” معمولا بیانگر خطای HTTP 404 است اما اگر از مقالات دسته خطاهای مهم در سئو ما، خطای 400 را مطالعه کرده باشید متوجه خواهید شد که IE برای خطای 400 و خطای 404 یک پیغام را نشان می‌دهد، و برای آنکه بتوانید تشخیص دهید کدام خطا است، کافی است عنوان مرورگر را مشاهده کنید تا نوع خطا را دریابید.

دلایل بروز خطای HTTP 404

خطای 404 از نظر فنی، خطایی از سمت کاربر است تا خطا از سمت سرویس‌دهنده (سرور). که به صورت ضمنی بر این موضوع دلالت دارد که این خطا ناشی از اشتباه شما (کاربران) است؛ اشتباه در نوشتن صحیح آدرس اینترنتی و یا این که صفحه‌ی (مورد نظر) منتقل شده است و یا آن صفحه از وب سایت حذف شده است و شما از این موضوع اطلاع ندارید.

احتمال دیگر این است که وب سایتی صفحه یا منبعی را جابه‌جا کند ولی این کار را بدون آدرس‌دهی از نشانی اینترنتی قدیمی به نشانی جدید انجام داده باشد (ریدایرکت صورت نگیرد). وقتی این اتفاق روی می‌دهد به جای این که به صفحه‌ی جدید هدایت شوید با خطای 404 مواجه می‌شوید.

نکته: گاهی اوقات سرورهای وب (سرویس‌دهنده‌های وب) مربوط به خدمات اطلاعات اینترنتی مایکروسافت، با اضافه کردن پسوندِ عددی بعد از 404، اطلاعات تخصصی بیشتری را در مورد علت بروز خطاهای 404 یافت نشد ارائه می‌کنند،  مثلاَ خطای HTTP 404.3- یافت نشد که به این معنا است که در نوع ضمیمه‌های چندمنظوره‌ی اینترنت، محدودیت وجود داشته است. ما از فهرست کامل این ارقام که به 404 اضافه می‌شوند به شرح زیر است.

404.0 - Not found.
404.1 - Site Not Found.
404.2 - ISAPI or CGI restriction.
404.3 - MIME type restriction.
404.4 - No handler configured.
404.5 - Denied by request filtering configuration.
404.6 - Verb denied.
404.7 - File extension denied.
404.8 - Hidden namespace.
404.9 - File attribute hidden.
404.10 - Request header too long.
404.11 - Request contains double escape sequence.
404.12 - Request contains high-bit characters.
404.13 - Content length too large.
404.14 - Request URL too long.
404.15 - Query string too long.
404.16 - DAV request sent to the static file handler.
404.17 - Dynamic content mapped to the static file handler via a wildcard MIME mapping.
404.18 - Querystring sequence denied.
404.19 - Denied by filtering rule.
404.20 - Too Many URL Segments

به ترتیب معانی آن:

  1. پیدا نشد.
  2. سایت پیدا نشد.
  3. محدودیت در رابط کاربری برنامه‌نویسی برنامه‌ی سرویس‌دهنده‌های اینترنت (ISAPI) یا واسط گذرگاه عمومی (CGI).
  4. محدودیت در نوع MIME.
  5. بدون پیکربندی شده.
  6. رد به علت درخواست فیلترسازی پیکربندی.
  7. فعل رد شده است.
  8. فرمت یا پسوند فایل رد شده است.
  9. فضای نام پنهان.
  10. ویژگی فایل پنهان.
  11. سر صفحه‌ی درخواست‌شده‌ی بسیار طولانی
  12. 11- درخواست دربردارنده‌ی دنباله‌ی گریز دوبرابری است.
  13. 12- درخواست دربردارنده‌ی کاراکترهای بیت بالا است.
  14. 13- حجم محتوا، بیش از حد طولانی است.
  15. 14- درخواست نشانی اینترنتی، بسیار طولانی است.
  16. 15- رشته یا ردیف جستجو، بسیار طولانی است.
  17. 16- درخواست نوشتن و نسخه‌برداری توزیع شده به برنامه‌ی کنترل فایل استاتیک ارسال شده است.
  18. 17- محتوای پویا از طریق علائم هماهنگ‌کننده‌ی MIME ترسیم‌کننده، بر روی برنامه‌ی کنترل فایل استاتیک ترسیم شده است.
  19. 18- توالی ردیف درخواست، رد شده است.
  20. 19- به واسطه‌ی مقررات فیلترکننده رد شده است.
  21. 20- بخش‌های بسیار زیاد نشانی اینترنتی

رفع خطای 404 not found را چگونه باید در سمت کاربر رفع کرد

  1. تلاش دوباره برای دسترسی به صفحه‌ی وب از طریق فشردن دکمه‌ی F5 ، کلیک بر روی دکمه‌ی تازه‌سازی یا بارگذاری مجدد (refresh) یا امتحان دوباره‌ی نشانی اینترنتی از نوار آدرس از راه حل های بدیهی در جهت برطرف کردن ارور 404 است.
    خطای 404 not found ممکن است به علل مختلفی پیدا شود ولو این که واقعاَ هیچ مسئله‌ای وجود نداشته باشد، بنابراین گاهی اوقات یک تجدید تازه‌سازی ساده (رفرش کردن) در بیشتر موارد موجب بارگذاری صفحه‌ای می‌شود که شما در پی آن هستید.
  2. خطاهای انسانی موجود در نشانی اینترنتی (URL) را بررسی کنید. خطای 404 که به معنای یافت نشد است، در بسیاری از مواقع به دلیل نگارش نادرستِ نشانی اینترنتی یا کلیک بر روی لینکی که به نشانی اینترنتیِ اشتباهی هدایت می‌کند، به وجود می‌آید.
  3. شما می‌توانید در زمان برخورد با خطای 404 به دایرکتوری بالاتر آن آدرس مراجعه کنید، به عنوان مثال:
    مثلاَ اگر نشانی اینترنتی mizfa.com/blog/programming-tutorials/asp-net-mvc/core سبب مواجه شما با خطای 404 می‌شود، خب بخ یک دایرکتوری بالاتر رفته یعنی به آدرس mizfa.com/blog/programming-tutorials/asp-net-mvc بروید. چنان چه چیزی که به دنبالش بودید را پیدا نکردید و یا با خطا مواجه شدید، یک بار دیگر این عمل را تکرار کرده و به mizfa.com/blog/programming-tutorials منتقل شوید. این کار سبب هدایت شما در همان راستایی می‌شود که در پی آن هستید هر چند این روش در برخی آدرس‌ها پاسخگو نیست، حال اگر دوباره با خطا روبه‌رو شدید خب به آدرس mizfa.com/blog بروید، بالاخره به یک ادرس صحیح میرسید.
    نکته: اگر شما تمام راه‌هایی که در بالا ذکر شده است را انجام دادید و به صفحه‌ی اصلی سایت برگشتید، برای دستیابی به اطلاعاتی که به دنبال آن هستید، به انجام یک فرایند جستجو (در باکس سرچ سایت) دست بزنید. اگر سایت فاقد قابلیت جستجو بود، با استفاده از لینک‌های دسته‌بندی که در سایت است، جستجو  را ادامه دهید و یا در گوگل آن چیزی را که دنبالش هستید را به همراه نام دامنه مدنظر سرچ کنید. بر روی این لینک کلیک کنید تا بهتر متوجه شوید.
  4. صفحه‌ سایتی که به دنبالش هستید را در یک موتور جستجوگر مثل گوگل، جستجو کنید. این احتمال وجود دارد که نشانی اینترنتی‌ که در دست دارید، اشتباه باشد، در این صورت یک جستجوی سریع در موتورهای جستجوگری مانند بینگ یا گوگل، شما را به آن چه که به دنبالش هستید برساند.
    اگر صفحه‌ای که به دنبالش بودید را بالاخره پیدا کردید، بخش نشانه‌گذاری (bookmark) یا علاقه‌مندی‌های (Favorite) خود را جهت جلوگیری از بروز خطای HTTP 404  در آینده، به روزرسانی کنید.
  5. اگر برای شما مشخص شد که خطای 404 ، تنها برای شما (سیستم شما) رخ می‌دهد، حافظه‌یِ پنهانِ مرورگر (browser’s cache) خود را پاک کنید. به عنوان مثال اگر با تلفن همراه خود می‌توانید به یک نشانی اینترنتی دسترسی پیدا کنید ولی تبلتتان نمی‌تواند به آن صفحه وارد شود، پاکسازی حافظه‌ی پنهان مرورگری که روی تبلتتان نصب است می‌تواند گره‌گشا باشد.
    همچنین باید توجه داشته باشید که اگر پاکسازی حافظه‌ی پنهان، کارساز نبود، پاکسازی کوکی‌های مرورگر (browser’s cookies) و یا دستکم یکی از کوکی‌های آن را که در درخواست وب‌سایت شما مداخله می‌کند، انجام دهید.
  6. و سرانجام این که اگر همه‌ی مواردی که در بالا اشاره شد با شکست مواجه شد، به طور مستقیم با وب‌سایت تماس بگیرد. اگر آن‌ها صفحه‌ای را حذف کنند، ازین پس خطای 404 کاملا درست است و آن‌ها قادر خواهند بود که به شما بگویند چه بکنید. اما اگر آن‌ها صفحه‌ای را منتقل کرده باشند و به جای هدایت بازدیدکنندگان (سایت) به صفحه‌ی جدید؛ این انتقال، سبب ایجاد خطای 404 شده باشد، خوشحال خواهند شد که گزارش این اشکال را از شما دریافت کرده و نسبت به رفع آن اقدام کنند.

رفع خطای 404 not found سمت مدیر سایت (وردپرس یا اختصاصی)

  1. خطای ۴۰۴ اگر مربوط به عکس ها است باید بررسی کنید که این عکس ها را در کجا فراخوانی کردید، اصولا وقتی به ادرس یعنی URL عکس دقت کنید متوجه میشوید که این عکس مربوط به افزونه است و یا مربوط به قالب و یا هیچ کدام، بلکه خود شما آن را آپلود کردید. مخصوصا مدیران سایت های وردپرسی که باید به این موضوع توجه کنند. مثلا اگر مشکل لود عکس برای افزونه فلان باشد میتوانید وارد تنظیمات افزونه شده و عکس جدید را به آن افزونه وردپرس دهید تا عکس جدید از این به بعد لود کند.
  2. گاهی وقت ها سایت وردپرس خود را از یک دامنه به دامنه دیگر انتقال میدهیم مثلا ادرس mizfa.com بوده و سپس به mizfa.ir انتقال میدهیم و متوجه میشویم که تمام ادرس های mizfa.ir با ارور ۴۰۴ وردپرس روبه رو شده اند در این حالت اگر مطمئن هستیم که انتقال به درستی صورت گرفته تنها کاری که باید انجام دهید این است که وارد قسمت تنظیمات -> پیوندهای یکتا -> تنظیمات عمومی شوید و سپس یک بار گزینه ساده را انتخاب کنید و ذخیره کنید و دوباره بعد از این امر همان گزینه خودتان را انتخاب کنید. به عبارت دیگر اگر تنظیمات من “نام نوشته” است گزینه “ساده” را انتخاب میکنم و ذخیره میکنم و سپس دوباره گزینه  “نام نوشته” با انتخاب کرده و دوباره ذخیره میکنم.
  3. اگر در سایت وردپرس خود هیچ کاری نکردید و یک باره خطاهای ۴۰۴ روبه‌رو شدید باید بررسی کنید که اخیرا چه افزونه ای را نصب کردید. گاهی به دلیل تداخل های موجود بین افزونه ها ممکن است چنین ارورهایی را در سایت های وردپرس مشاهده کنیم.
  4. در سایت وردپرس خود صفحه یا نوشته ای را پاک کرده باشید طبیعتا با خطای ۴۰۴ مواجه خواهید شد. بهترین افزونه برای ریدایرکت کردن هم افزونه redirection است و میتوانید به کمک این افزونه ادرسی را که حذف کردید را انتقال دهید به آدرس جدید و یا مشابه آن. توضیحات بیشتر درباره ریدایرکت را در مقاله ریدایرکت ۳۰۱ میزفا مطالعه کنید.
  5. یک اشتباه مرگ بار!!
    All 404 Redirect to Homepage
    نمونه افزونه وردپرس برای انتقال همه صفحات 404 به صفحه اصلی All 404 Redirect to Homepage

    یکی از اشتباه هایی که در در رفع خطای ۴۰۴ در وردپرس این است که برخی دوستان مثلا هزاران صفحه خطای ۴۰۴ دارند و به کمک یک افزونه تمام خطاهای خود را به صفحه اصلی انتقال میدهند. این نوع رفتار اصلا جالب نیست، هم از نظر سئو و هم از نظر تجربه کاربری.

  6. قبلا در دوره ۱۵ ساعت فیلم آموزشی سرچ کنسول درباره خطاهایی که این ابزار قدرتمند گوگل در رابطه با سایتتمون گزارش میدهد به صورت کامل صحبت کردیم، این ابزار با عنوان خطای Submitted URL not found (404) به مدیر سایت ایمیل میزند و درباره صفحاتی مشکل دارد اطلاع رسانی می‌کند. عکس زیر گویای گزارش حطاهای ۴۰۴ یک سایت در سرچ کنسول است.
    شماره یک: نام خطا در سرچ کنسول را نمایش می‌دهد.
    شماره دو: برای اعلام رفع خطاهای ۴۰۴ به گوگل است.
    شماره سه: نمودار بالا و پایین این نوع خطا است.
    شماره چهار: آدرس صفحاتی که با خطای ۴۰۴ روبه‌رو شدند را نمایش می‌دهد.
    شماره پنج: اخرین زمانی که ربات گوگل وارد آن صفحه شده و دیده خطای ۴۰۴ دارد.

    خطای Submitted URL not found 404 در سرچ کنسول
    خطای Submitted URL not found 404 در سرچ کنسول

اشتباهات دیگری که مشابه‌ی خطای 404 است

پیام‌های خطای زیر با 404 not found یافت نشد مرتبط هستند زیرا همه‌ی آن‌ها به خطاهای مربوط به سرویس گیرنده (کاربر) مربوط می‌شوند.

خطای 400 Bad Request ، خطای 401 Unauthorized، خطای 403 Forbidden، ارور 408 Request Timeout .

کدهای وضعیت HTTP متعددی که مربوط به سرویس‌دهنده (سرور) باشد نیز وجود دارد از جمله پیغام 500 که به بروز خطای داخلی در سرور اشاره دارد که لیست این گونه خطاها در قسمت خطاهای 5xx سرور قابل دسترس است.

در آینده این مقاله تکمیل خواهد شد و نحوه رفع ارور 404 در سمت سرور و همینطور افزونه 404 برای وردپرس و جوملا که برای مدیریت چنین مشکلاتی در سایت هستند به شکل کاملا اشاره خواهیم کرد چرا که این موضوع می‌تواند بر روی بهبود تجربه کاربری و همینطور سئو سایت تاثیر گذار باشید.

اینفوگرافیک همه ارورها در یک نگاه

اینفوگرافیک همه ارورها در یک نگاه
اینفوگرافیک همه ارورها در یک نگاه

 

شما بگید، آیا راه کار بهتری برای رفع خطای 404 دارید؟ از تجربیات خود بگویید.

درضمن اگر سوالی داشتید و یا راه حل های اشاره شده درباره ارور ۴۰۴ در مقاله بالا برای شما راه‌گشا نبود حتما در نظرات میزفا مشکلات خود را درج کنید.

پوریا آریافر
اولین کسب و کار آنلاین خودم رو در فیسبوک راه‌اندازی کردم، سال ۲۰۱۱ یکی از پرتعامل‌ترین صفحات فارسی با ۸۰ هزار فالور فعال رو داشتم. بعد اینکه فیسبوک خالی از کاربر ایرانی شد وارد دنیای شبکه شدم و در انتهای سال ۲۰۱۲ مدرک MCSE مایکروسافت رو دریافت کردم، در حالی که نمره بالا گرفتم ولی کسی به دلیل به خطر افتادن موقعیت شغلی خودش به عنوان کارآموز منو قبول نمی‌کرد، بعدش با شروع دوران خدمت سربازی، مسئول بهینه سازی یک سایت خبری معتبر شدم و سئو یاد گرفتم. در ابتدای سال ۲۰۱۴ تونستم از رتبه ۱۵۰۰۰ به ۴۰۰ الکسا نزدیک کنم، اون زمان الکسا خیلی مهم بود. وارد دانشگاه شدم، به دلیل عدم علاقه به دانشگاه سعی کردم زودتر تمومش کنم و سه ساله در مقطع کارشناسی IT فارغ التحصیل شدم، توی دانشگاه هر کسی منو میدید یاد سئو میوفتاد، در همون سال آخر دانشگاه بزرگ‌ترین کانال تلگرامی IT با ۴۰ هزار عضو رو داشتم، که به مجتمع فنی فروختم تا بتونم تمرکز رو فقط بر روی عشق خودم یعنی سئو بذارم، وقتی کانال تلگرام فروختم حس پرواز بهم دست داد، هرچند درآمد چندین میلیون ماهانه رو از دست دادم ولی دوباره باید مثل گذشته با پوستی نو یک فصلی نو رو میساختم. در این چندین سال فعالیت‌های سئو به شکل تخصصی بنده در قالب پروژه‌های مختلف و آموزش‌های حضوری و غیرحضوری در دفتر میزفا و دانشگاه علامه طباطبایی تهران صورت ‌گرفته، تجربه بهینه سازی موفقی در بهبود UX و CRO پروژه‌های سئو کسب کردم. در اکثر ابزارهای کاربردی گوگل تسلط کاملی دارم. عاشق کسب تجربه های جدید هستم. راز پیشرفت در هر کاری رو یادگیری و یاددادن می‌دونم و میزفا که در اواخر ۲۰۱۶ راه‌اندازی شد تونست چنین بستر مناسبی رو برام فراهم کنه. همینطور در حال حاضر مدیریت یک تیم ۱۰ نفری از جوانان فعال و پرانگیزه رو در میزفا به عهده دارم. نقد و بازخوردهای سازنده شما، جوهر تلاش‌های مستمر ماست تا یک قدم خودمون بهبود بدیم. منتظریم …

155 نظر

با موفقیت ثبت شد، میزفا از شما برای عضویت در خبرنامه هفتگی تشکر میکند.

عضویت در خبرنامه هفتگی برای دریافت:

  • فیلم و مقاله رایگان سئو
  • آموزش‌های UX ، GA و GTM
  • مقاله های تخصصی ASP.NET Core
  • اطلاع رسانی از محصولات
فیلم آموزشی asp.net core 2
ترک میزفا خوب نیست!
دوره سئو، رایگان شد.
فرصتی رایگان برای یادگیری
کاراکتر اشاره گر
دوره سئو، رایگان شد.
فرصتی رایگان برای یادگیری
کاراکتر اشاره گر