مطمئنم تا حالا حداقل یکباری با ارور 404 مواجه شدهاید. خطای 404، یکی از خطاهایی است که هر سایتی با آن دست و پنجه نرم میکند. اصلاً هیچکس از این صفحه 404 خوشش نمیآید؛ دقیقاً مثل این است که شما مسیری را با خودرو بروید و فکر کنید قرار است به جایی برسید ولی یکهو به کوچهای بُن بست برخورد کنید. دقیقاً چنین حس و حال بد و روی اعصابی برای کاربری که به صفحه 404 میرسد هم پیش میآید.
به هر حال، برای اینکه بتوانیم فضای خوبی برای کاربران در سایتمان فراهم کنیم، باید دنبال راههای رفع این خطا برویم. در این مقاله، دقیقاً قرار است به همین موضوع برسیم که چه راههایی برای رفع ارور 404 وجود دارد.
اول از همه، بریم ببینیم دقیقاً این خطای 404 چی هست . . .
خطای 404 یا ارور 404 چیست؟
تویِ دنیای کامپیوتر و وبسایتها، وقتی شما یک درخواستی از سرور یا نرم افزار دارید، در زمان خیلی کوتاهی، سرور به شما با یک کد پاسخ میدهد. اگر با دنیای سایتها آشنا باشید، متوجه هستید که این کدها تعدادشان یکی دوتا نیست؛ مثلاً:
- 301
- 302
- 404
- 500
- 403
- و
- .
- .
تمام این کدها وقتی از طرف سرور برای پاسخ به درخواست شما ارسال میشود، معنای و مفهوم خاص خودشان را دارند. مثلاً کد 302، مربوط به این است که URLای که شما جستجو کردید، بهطور موقت به صفحه دیگری تغییر مسیر داده شده. یا مثلاً کد 301، یعنی همین انتقال انجام شده ولی نه بهطور موقت؛ بلکه بهطور دائمی.
کد 404 یا خطای 404، به این معنی است که URL و صفحهای که کاربر دنبالش بوده، به دلایل مختلفی پیدا نشده و در حال حاضر چنین صفحهای با چنین آدرسی، اصلاً وجود ندارد.
معمولاً هم پیغامهای زیر برای کاربران وقتی که به ارور 404 برسند، نمایش داده میشود:
- پیدا نشد (Not Found)
- ارور 404 (404 Error)
- خطای 404
- Http 404
- Error 404 Not Found
- صفحه مورد نظر شما، یافت نشد
- و کلی پیغام سفارشی سازی شده دیگه! (که یاد میگیرین چطور انجامش بدین)
خُب پس متوجه شدید که هر وقت ما دنبال یک صفحهای باشیم که به هر دلیلی که در ادامه توضیح میدهم وجود نداشته باشد، با خطای 404 مواجه میشویم و چنین صفحهای با پیامهایی مثل پیامهای بالا برایمان نمایش داده میشود.

داستان هیجان انگیز خطای 404
پشت این عدد 404، یک داستان خیلی جالب و هیجان انگیز وجود دارد. یعنی فکر نکنید که همینطوری بدون دلیل یا حتی اتفاقاً با دلیل علمی این عدد 404 برای اروری که فایل مورد نظر پیدا نمیشود، در نظر گرفته شده.
بینِ سالهای 1981 تا 1992، یکسری دانشمند در سِرن سوئیس مشغول توسعه شبکه جهانی وب (WWW) بودند. این چند تا دانشمندی که دربارهشان صحبت میکنم، در طبقه چهارم یک ساختمان کار میکردند. کارشان هم این بود که یک پایگاه داده درست کنند که کار توزیع یا تحویل فایل را انجام بدهد.
تویِ همان طبقه چهارم، یک اتاقی وجود داشت به شمارۀ: “404”.
کسانی که در این اتاق کار میکردند، وظیفه داشتند بهصورت دستی، درخواستهایی که در سراسر وِب ایجاد میشود را پاسخ بدهند. ولی خُب کار خوب پیش نرفت؛ چون خیلی از افراد، درخواستشان اشتباه بود. مثلاً نام فایلی که درخواست میدادند را اشتباه وارد میکردند.
بالاخره همین پاسخ دهندگان محترم عصبانی شدند و زدند به سیمِ آخر! تصمیم گرفتند برای هر کسی که فایل اشتباهی را درخواست میکند، یک پیام نمایش دهند:
اتاقِ 404: فایل یافت نشد. ☹

کمکم با گذشت زمان، کدهای HTTP توسط W3C معرفی شدند و وقتی همه چیز خودکار شد، همین کد: خطای 404 پیدا نشد برای وضعیتی که فایل یا صفحهای پیدا نمیشود، در نظر گرفته شد. همان زمان هر کجا را میدیدید، 404 به چشمتان میخورد. کسب و کارها حتی روی تی شرتها و محصولاتشان هم کد 404 را مینوشتند و همینطوری، باعث محبوبیت بیشترش شدند.
چطور ارور 404 را رفع کنیم؟
خُب، حالا رسیدیم به اصلِ ماجرا. قراره باهم ببینیم که این ارور 404 که در سایتمان وجود دارد را چطور میتوانیم رفع کنیم و کاری کنیم که آسیبی به سئو سایتمان وارد نشود.
اول از همه این را بگویم که کلاً دو گروه با این مشکل مواجه میشوند: بازدیدکنندگان سایت و دست اندرکاران سایت.
از آنجایی که حدس میزنم شما کسب و کار اینترنتی راهاندازی کردهاید یا مسئولیت یک سایت را به عهده دارید و با این مشکل مواجه شدهاید، روشهای رفع خطای 404 مربوط به همین حالت را برایتان توضیح میدهم.
1) مشکل در تصاویر صفحه
خیلی وقتها، ارور 404 که در تمام صفحات سایت یا یک صفحه از سایتتان بهوجود میآید، بخاطر این است که شما تصاویر موجود در همان صفحات یا بخشی از سایت را حذف کردهاید. اگر از وردپرس استفاده میکنید، خیلی خوب میدانید که بهراحتی در بخش رسانهها، امکان حذف یک تصویر وجود دارد.
بعضیها هم کلاً از ریشه تصویر را حذف میکنند. یعنی از طریق پوشه wp-content، تصاویر را مستقیماً از سرور پاک میکنند. خُب وقتی یک تصویری ایندکس شده امّا حالا وجود ندارد، خطای 404 به کاربر نمایش داده میشود.
راهحل
برای رفع این مشکل، دو راه دارید. اول اینکه دقیقاً یک تصویر بهجای تصویر قبلی با همان مشخصات مثل نام یکسان بارگذاری کنید. مثلاً اگر شما در یک صفحه تصویر “seo.jpg” داشتید و حدفش کردهاید، حالا یک تصویر دقیقاً با همین نام باید بسازید. اینطوری در بررسی بعدی گوگل، خبری از تصویری که وجود ندارد، نخواهد بود.

راه دوم که هم وردپرسیها و هم غیروردپرسیها جواب میدهد، استفاده از پوشه موجود در Root هاست است. به مسیر تصویری که حذف کردهاید بروید و همانجا یک تصویر با نام قبلی، آپلود کنید.
2) بروز ارور 404 با انتقال یا تغییر آدرس (URL) صفحه
یکی از رایجترین دلایل بروز خطای 404، تغییر دادن آدرس است. خیلی وقتها، شما مجبور میشوید که آدرس صفحه سایتتان را تغییر بدهید. مثلاً فرض کنید من یک صفحه میسازم با این URL (aryansoleimani.com/courses/course1/). حالا به دلایلی تصمیم گرفتم آدرس را تغییر بدهم و روی این URL (aryansoleimani.com/courses/newcourse/) سِت کنم.
خُب من با این URL کلی تبلیغات کردم، رپورتاژ آگهی دادم و اصلاً ماههاست که تویِ گوگل ایندکس شده؛ الان که یکهو بیایم و URL را تغییر بدهم، هر چه رشته کردهام پنبه میشود. جایگاهم در گوگل را از دست میدهم و کلی هزینهای که کردم، دیگر به کارم نمیآید. در چنین حالتی که URL تغییر کرده است، نباید همینطوری وِلَش کنید به امانِ خدا! چون با تغییر URL کاربر به محض ورود، با ارور 404 مواجه میشود.

راهحل
برای اینکه کسی وارد یک URLای میشود که شما به یک URL دیگر تغییرش دادهاید، باید از ریدایرکت استفاده کنید. ریدایرکت، اصطلاحی است که به فرآیند هدایت یک کاربر از یک مسیر به مسیری دیگر گفته میشود.
3 نوع ریدایرکت داریم:
- ریدایرکت 301 (انتقال دائمی)
- ریدایرکت 302 (انتقال موقت – نسخه قدیمی HTTP)
- ریدایرکت 307 (انتقال موقت – نسخه جدید HTTP)
اگر از وردپرس استفاده میکنید، به کمک افزونه RankMath، ایجاد ریدایرکت برایتان مثل آب خوردن خواهد بود. یکسری سایتسازها مثل وبزی هم برایتان در قسمت تنظیمات، امکان ریدایرکت را فراهم کردهاند. اگر هم کلاً سایت وردپرسی ندارید، پیشنهاد میکنم حتماً از یک برنامهنویس کمک بگیرید تا این کار را برایتان انجام دهد.
3) تداخل افزونهها یا کدها
اگر فقط کمی تجربه کار با وردپرس داشته باشید، احتمالاً با مشکلاتی مواجه شدهاید که هر چقدر گشتید، راهحلی برایشان پیدا نکردید و در نهایت، متوجه شدهاید که همه چیز، بخاطر تداخل دو یا چند پلاگین باهم اتفاق افتاده.
اگر تمام مشکلاتی که گفتم را بررسی کردید و متوجه شدید که همه چیز سرجایش است، احتمالاً خطای 404 بخاطر تداخل پلاگینهاست. گاهی اوقات دعوای دو پلاگین باهم، باعث رخ دادن ارور 404 میشوند.
گاهی هم برای سایتهای غیر وردپرسی پیش میآید که کدها باهم تداخل دارند.
راهحل
برای اینکه متوجه شوید مشکل از اینجاست یا نه، باید یکییکی شروع کنید به غیرفعال کردن پلاگینها. هر بار که یک پلاگین را غیرفعال میکنید، بررسی کنید که همچنان خطای 404 وجود دارد یا نه. اگر وجود نداشت که یعنی مشکل از همان پلاگین است امّا اگر بازهم ارور 404 سرجایش بود، پلاگینی که غیرفعال کرده بودید را فعال کنید و بعدی را غیرفعال کنید و همینطوری تا آخر . . .

اگر هم سایت وردپرسی ندارید، از یک برنامهنویس متخصص بخواهید که کدهای سایت را بررسی کند و اگر تداخلی پیدا کرد، برطرفش کند.
4) بروز ارور 404 با تغییر در فرمت پیوند یکتا
هر سایتی برای URLهایی که دارد، فرمت مشخصی باید داشته باشد. یعنی مثلاً خیلیها به دلایلی تصمیم میگیرند که در ساختار و فرمت آدرسهای مقالات سایتشان، تاریخ را هم مشخص کنند. به هر حال، شما باید همان اول کار یک فرمت مشخص کنید و هیچوقت هم تغییرش ندهید.
مثلاً الان فرمتی که برای پیوند یکتا مشخص کردم را در آدرس بار بالا ببینید:
(learn.aryansoleimani.com/error-404/)
پس یعنی من فرمتی انتخاب کردم که بعد ساب دامین و دامنه اصلی، فقط نام مقاله نمایش داده شود. حالا اگر بعد از مدتی که گوگل صفحات و مقالات مختلفی را ایندکس کرده بیایم و یکهو فرمت را تغییر بدهم به مثلاً:
(learn.aryansoleimani.com/2022/07/16/error-404/)
معلوم است که تمام مقالات سایت به کاربران خطای 404 نمایش میدهد.
راهحل
اول از همه این را بگویم که برای تغییر دادن فرمت پیوندهای یکتا، باید خیلی دلیل قانع کنندهای داشته باشید. بنابراین اگر امکانش وجود دارد، بیخیالش شوید.
ولی اگر اصرار دارید، حتماً در وردپرس از منو به بخش تنظیمات و زیرمنو پیوندهای یکتا بروید. اینجا یکبار گزینه را روی فرمت دیگری بگذارید و ذخیره کنید و دوباره برگردانید به همان فرمت دلخواه خودتان. اگر سایت وردپرسی ندارید، باید از یک برنامهنویس بخواهید در فایل .htaccess یکسری تغییرات ایجاد کند.

خلاصه اینکه . . .
خطای 404 را باید جدی بگیرید. گوگل اصلاً از صفحاتی که ارور 404 داشته باشند خوشش نمیآید و به همان صفحه و کل سایت، امتیاز منفی میدهد. اگر صفحهای از سایت شما که قبلا محتوایی داشته، الان به هر دلیلی به کاربران خطای 404 را نمایش میدهد، باید هر چه سریعتر مشکلش را برطرف کنید.
اگر هنوز در این زمینه سوال یا مشکلی دارید، حتماً در بخش دیدگاهها بپرسید.