خطای 404 چیست؟ آموزش پیدا کردن و رفع Error 404 در وردپرس و سایت

پاسخ کوتاه: برای رفع خطای 404 چه کاری انجام دهیم؟
خطای 404 Not Found زمانی نمایش داده میشود که مرورگر درخواست یک آدرس (URL) را به سرور ارسال میکند، اما سرور نمیتواند صفحه یا فایل موردنظر را در آن مسیر پیدا کند.
برای رفع خطای 404 ابتدا باید مشخص کنید علت مشکل چیست:
- آیا صفحه حذف شده است؟
- آیا URL تغییر کرده است؟
- آیا لینک داخلی اشتباه است؟
- آیا تنظیمات وردپرس یا پیوند یکتا مشکل دارد؟
- آیا بعد از انتقال سایت (Migration) این خطا ایجاد شده است؟
- آیا باید Redirect 301 ایجاد شود؟
مراحل اصلی رفع خطای 404:
- آدرس URL را بررسی کنید.
- مشخص کنید صفحه واقعاً حذف شده یا فقط مسیر آن تغییر کرده است.
- صفحات 404 سایت را با Google Search Console یا ابزارهای Crawl پیدا کنید.
- برای صفحات ارزشمند Redirect 301 ایجاد کنید.
- در وردپرس Permalinkها را بازسازی کنید.
- لینکهای داخلی خراب را اصلاح کنید.
- تنظیمات Server و Rewrite Rules را بررسی کنید.
در ادامه تمام روشهای پیدا کردن، تحلیل و رفع خطای 404 را بررسی میکنیم.

خطای 404 چیست؟
خطای 404 Not Found یکی از کدهای وضعیت HTTP است که نشان میدهد سرور درخواست دریافت کرده، اما منبع موردنظر را پیدا نکرده است.

به زبان ساده:
کاربر روی یک لینک کلیک میکند یا یک URL را وارد میکند، اما صفحهای که باید در آن آدرس نمایش داده شود وجود ندارد.
مثلاً:
example.com/product-oldدر حالی که این صفحه حذف شده یا آدرس آن تغییر کرده است.
در این حالت سرور پاسخ میدهد:
HTTP Status Code: 404یعنی:
صفحه موردنظر پیدا نشد.
تفاوت خطای 404 با سایر خطاهای رایج سایت
همه خطاهای سایت یک معنی ندارند. تشخیص تفاوت آنها اولین مرحله عیبیابی است.
| کد HTTP | معنی | علت معمول |
|---|---|---|
| 404 Not Found | صفحه پیدا نشد | حذف صفحه، تغییر URL، لینک خراب |
| 301 Redirect | انتقال دائمی | تغییر مسیر صحیح صفحه |
| 403 Forbidden | دسترسی ممنوع | Permission یا Firewall |
| 500 Internal Server Error | خطای داخلی سرور | PHP، برنامه یا Server |
| 502 Bad Gateway | پاسخ نامعتبر سرور | Proxy، Server یا سرویسها |
| 503 Service Unavailable | سرویس در دسترس نیست | فشار سرور یا Maintenance |
بنابراین هر صفحهای که باز نمیشود الزاماً خطای 404 نیست.
چرا خطای 404 ایجاد میشود؟
خطای 404 میتواند دلایل مختلفی داشته باشد. رایجترین علتها عبارتاند از:
1. حذف شدن صفحه بدون Redirect
یکی از رایجترین دلایل ایجاد 404 زمانی است که یک صفحه حذف میشود اما کاربر یا موتور جستجو هنوز همان URL را درخواست میکند.
مثال:
قبلاً:
example.com/old-productوجود داشته است.
بعد صفحه حذف شده اما هیچ مسیر جایگزینی تعریف نشده است.
نتیجه:
404 Not Found2. تغییر URL یا Permalink
اگر آدرس یک صفحه تغییر کند، URL قبلی دیگر وجود نخواهد داشت.
مثلاً:
قبل:
example.com/blog/wordpress-errorبعد:
example.com/blog/fix-wordpress-errorاگر برای URL قدیمی Redirect ایجاد نشود، کاربران و گوگل با خطای 404 مواجه میشوند.
3. لینک داخلی خراب (Broken Internal Link)
گاهی صفحه حذف نشده، اما لینکهای داخل سایت هنوز به آدرس قدیمی اشاره میکنند.
مثلاً:
در یک مقاله لینک شده:
example.com/service-oldاما صفحه واقعی:
example.com/servicesاست.
در این حالت کاربر از داخل سایت وارد یک صفحه 404 میشود.
4. اشتباه تایپی در URL
گاهی هیچ مشکلی در سایت وجود ندارد و کاربر فقط آدرس اشتباه وارد کرده است.
مثلاً:
صحیح:
example.com/wordpress-hostingاشتباه:
example.com/wordpress-hostig5. مشکل تنظیمات وردپرس
در سایتهای وردپرسی، مخصوصاً بعد از:
- نصب افزونه جدید
- تغییر قالب
- تغییر Permalink
- انتقال سایت
ممکن است Rewrite Rules دچار مشکل شوند و حتی صفحات موجود نیز 404 نمایش داده شوند.
6. ایجاد 404 بعد از انتقال سایت
Migration یکی از سناریوهای مهم ایجاد خطای 404 است.
دلایل رایج:
- تغییر ساختار URL
- انتقال ناقص فایلها
- تنظیم نبودن Rewrite Rules
- تغییر Domain
- تغییر Server Configuration
- مشکل در فایل
.htaccess
آیا خطای 404 برای سئو ضرر دارد؟
یکی از سوالات رایج صاحبان سایت این است:
آیا داشتن خطای 404 باعث افت رتبه گوگل میشود؟
پاسخ کوتاه:
وجود چند صفحه 404 طبیعی است و بهتنهایی مشکل سئویی ایجاد نمیکند.
گوگل میداند که در هر سایت ممکن است:
- صفحات حذف شوند؛
- URLها تغییر کنند؛
- محصولات تمام شوند؛
- لینکهای قدیمی وجود داشته باشند.
اما زمانی که 404 مشکلساز میشود که:
- صفحات مهم سایت از دسترس خارج شوند؛
- بکلینکهای ارزشمند به صفحات 404 برسند؛
- لینکهای داخلی زیادی خراب باشند؛
- تعداد زیادی URL ارزشمند بدون مدیریت حذف شوند.
بنابراین هدف این نیست که تمام 404های سایت را صفر کنیم؛ هدف این است که 404های مهم را شناسایی و مدیریت کنیم.
انواع خطای 404 که باید بشناسید
همه صفحات 404 ارزش یکسانی ندارند.
| نوع 404 | مثال | اقدام پیشنهادی |
|---|---|---|
| صفحه حذف شده بدون ارزش | مقاله قدیمی بدون بازدید | میتواند 404 باقی بماند |
| صفحه حذف شده با بازدید | محصول یا مقاله مهم | Redirect 301 |
| صفحه دارای بکلینک | لینک خارجی ارزشمند | Redirect 301 |
| URL اشتباه | تایپ اشتباه | اصلاح لینک |
| تغییر ساختار سایت | Migration | بررسی Redirect Map |
| 404 داخلی | لینک خراب داخل سایت | اصلاح لینک |
| 404 تصویر | فایل حذف شده | بررسی مسیر فایل |
چگونه صفحات 404 سایت را پیدا کنیم؟
برای رفع اصولی خطای 404 ابتدا باید بدانید:
- چه URLهایی 404 شدهاند؟
- چند بار درخواست شدهاند؟
- آیا گوگل آنها را دیده است؟
- آیا لینک داخلی یا خارجی دارند؟
چند روش اصلی برای پیدا کردن صفحات 404:
پیدا کردن خطای 404 در Google Search Console
یکی از مهمترین منابع بررسی خطاهای Crawl، سرچ کنسول گوگل است.
مسیر:
Google Search Console
→ Pages
→ Not indexed
→ Not found (404)در این بخش میتوانید URLهایی که گوگل هنگام Crawl با پاسخ 404 مواجه شده است را مشاهده کنید.
برای هر URL بررسی کنید:
- آیا صفحه باید وجود داشته باشد؟
- آیا حذف شده است؟
- آیا باید Redirect شود؟
- آیا لینک داخلی به آن وجود دارد؟

پیدا کردن صفحات 404 با ابزارهای Crawl
ابزارهای تخصصی سئو میتوانند تمام لینکهای سایت را بررسی کنند.
نمونه ابزارها:
- Screaming Frog SEO Spider
- Sitebulb
- Ahrefs Site Audit
- Semrush Site Audit
این ابزارها کمک میکنند:
- لینکهای خراب داخلی را پیدا کنید؛
- صفحات حذفشده را شناسایی کنید؛
- مشکلات ساختاری سایت را بررسی کنید.
بررسی 404 در لاگ سرور
برای سایتهای بزرگ، بررسی Server Log اطلاعات دقیقتری میدهد.
در Logها میتوان دید:
- کدام URLها درخواست شدهاند؛
- چند بار درخواست شدهاند؛
- کاربران یا Botها چه مسیرهایی را بررسی کردهاند.
این روش برای سایتهای پرترافیک و فروشگاهی اهمیت بیشتری دارد.
رفع خطای 404 در وردپرس
در سایتهای وردپرسی، خطای 404 یکی از مشکلات رایج است؛ مخصوصاً بعد از:
- تغییر ساختار URL
- نصب یا حذف افزونهها
- تغییر قالب
- انتقال سایت به هاست جدید
- تغییر دامنه
- تغییر تنظیمات Permalink
در بسیاری از مواقع مشکل از حذف صفحه نیست، بلکه WordPress نمیتواند مسیر صحیح URL را به فایل یا Query مربوطه متصل کند.
در ادامه رایجترین روشهای رفع خطای 404 وردپرس را بررسی میکنیم.
1. بازسازی Permalink وردپرس
یکی از سادهترین و رایجترین روشهای رفع 404 در وردپرس، بازسازی تنظیمات پیوند یکتا است.
گاهی Rewrite Rules وردپرس بهدرستی بهروزرسانی نمیشوند و باعث میشوند صفحات موجود نیز با خطای 404 نمایش داده شوند.
برای بازسازی Permalink:
وارد پیشخوان وردپرس شوید:
پیشخوان وردپرس
→ تنظیمات
→ پیوندهای یکتابدون تغییر هیچ گزینهای:
روی:
ذخیره تغییرات
کلیک کنید.
با این کار WordPress دوباره قوانین Rewrite را ایجاد میکند.
در بسیاری از مواقع، اگر مشکل فقط از Permalink باشد، صفحات بلافاصله دوباره در دسترس قرار میگیرند.
2. بررسی افزونههای وردپرس
برخی افزونهها میتوانند باعث ایجاد یا تشدید خطای 404 شوند.
بهخصوص افزونههایی که با URL و Routing کار میکنند:
- افزونههای SEO
- افزونههای Redirection
- افزونههای Cache
- افزونههای امنیتی
- افزونههای فروشگاهی
- افزونههای ساخت Post Type
برای بررسی:
- آخرین افزونه نصب یا آپدیتشده را بررسی کنید.
- افزونههای مرتبط با Redirect را کنترل کنید.
- Cache افزونه را پاک کنید.
- در صورت نیاز افزونهها را موقتاً غیرفعال کنید.
اگر بعد از غیرفعالکردن یک افزونه مشکل حل شد، همان افزونه باید بررسی شود.
3. بررسی فایل .htaccess
در سایتهای وردپرسی که روی Apache یا LiteSpeed اجرا میشوند، فایل:
.htaccessنقش مهمی در Rewrite URLها دارد.
اگر این فایل خراب یا ناقص شود، ممکن است تمام صفحات داخلی سایت با خطای 404 مواجه شوند.
مسیر فایل:
public_html/.htaccessیک فایل استاندارد WordPress معمولاً شامل قوانین Rewrite مشابه زیر است:
# BEGIN WordPress
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
# END WordPressنکته:
قبل از تغییر فایل .htaccess حتماً یک نسخه Backup تهیه کنید.
اگر مطمئن نیستید مشکل از این فایل است، بهتر است ابتدا از طریق Permalink آن را بازسازی کنید.
4. پاک کردن Cache وردپرس و سرور
گاهی صفحه 404 دیگر وجود ندارد اما نسخه قدیمی آن هنوز در Cache ذخیره شده است.
این موضوع مخصوصاً در سایتهایی که از سیستمهای Cache استفاده میکنند رایج است.
مواردی که باید بررسی شوند:
Cache افزونه
مانند:
- LiteSpeed Cache
- WP Rocket
- W3 Total Cache
Cache سرور
در هاستهایی که از LiteSpeed یا سیستمهای مشابه استفاده میکنند.
CDN Cache
مانند:
- Cloudflare
بعد از اصلاح URL یا ایجاد Redirect، Cache را پاک کنید و دوباره تست کنید.
5. بررسی قالب وردپرس
گاهی خطای 404 به دلیل قالب ایجاد میشود.
این اتفاق بیشتر در شرایط زیر دیده میشود:
- قالب Custom طراحی شده است؛
- Templateهای اختصاصی استفاده میشود؛
- Custom Post Type وجود دارد؛
- فایلهای Template حذف یا تغییر کردهاند.
برای بررسی:
- قالب را موقتاً به یکی از قالبهای پیشفرض WordPress تغییر دهید.
- URL را دوباره تست کنید.
اگر مشکل برطرف شد، باید ساختار قالب بررسی شود.
رفع خطای 404 بعد از انتقال سایت یا تغییر هاست
یکی از سناریوهای مهم برای کاربران گنجه، خطای 404 بعد از Migration است.
گاهی:
- سایت منتقل شده است؛
- صفحه اصلی باز میشود؛
- اما صفحات داخلی 404 میدهند.
این مشکل معمولاً به یکی از موارد زیر مربوط است:
1. Permalink در سرور جدید بازسازی نشده است
بعد از انتقال سایت:
وارد وردپرس شوید:
Settings
→ Permalinks
→ Save Changesتا Rewrite Rules دوباره ساخته شوند.
2. فایل .htaccess منتقل نشده است
در انتقالهایی که فقط فایلهای اصلی جابهجا میشوند، ممکن است:
.htaccess- تنظیمات Rewrite
بهدرستی منتقل نشده باشند.
3. تنظیمات Web Server متفاوت است
اگر سایت از Apache به Nginx یا برعکس منتقل شده باشد، قوانین Rewrite باید متناسب با Web Server جدید تنظیم شوند.
مثلاً:
Apache:
.htaccessرا استفاده میکند.
اما Nginx:
server block configurationنیاز دارد.
4. تغییر Domain
اگر سایت از:
olddomain.comبه:
newdomain.comمنتقل شده باشد، باید:
- URLها بررسی شوند؛
- Redirectها ساخته شوند؛
- Database Search Replace انجام شود.
چگونه خطای 404 بعد از تغییر URL را رفع کنیم؟
اگر آدرس صفحه تغییر کرده است، بهترین روش معمولاً استفاده از:
Redirect 301
است.
Redirect 301 به موتورهای جستجو اعلام میکند:
این صفحه بهصورت دائمی به آدرس جدید منتقل شده است.
مثال:
قدیمی:
example.com/old-urlجدید:
example.com/new-urlRedirect:
301 old-url → new-urlمزایای Redirect 301:
- حفظ بخشی از اعتبار URL قبلی
- جلوگیری از تجربه بد کاربر
- جلوگیری از لینکهای شکسته
- انتقال سیگنالهای سئو
آیا باید تمام صفحات 404 را Redirect کنیم؟
خیر.
یکی از اشتباهات رایج این است که همه URLهای 404 را به صفحه اصلی Redirect کنیم.
این کار میتواند باعث ایجاد:
Soft 404
شود.
قاعده بهتر:
Redirect کنید اگر:
- صفحه جایگزین واقعی دارد؛
- URL قبلی بکلینک دارد؛
- صفحه قبلی بازدید ارگانیک داشته است؛
- محصول مشابه وجود دارد.
Redirect نکنید اگر:
- صفحه کاملاً بیارزش است؛
- جایگزین واقعی ندارد؛
- حذف آن منطقی بوده است.
در این حالت یک پاسخ صحیح:
404 Not Foundمیتواند بهترین تصمیم باشد.
تفاوت 404 و 410 چیست؟
هر دو نشاندهنده نبودن صفحه هستند، اما مفهوم متفاوتی دارند.
| وضعیت | معنی |
|---|---|
| 404 | صفحه پیدا نشد |
| 410 | صفحه برای همیشه حذف شده است |
زمانی که مطمئن هستید یک URL دیگر هیچوقت باز نمیگردد، استفاده از 410 میتواند سیگنال واضحتری ارائه دهد.
مثلاً:
- کمپین موقت تمام شده؛
- صفحه قدیمی دیگر هیچ کاربردی ندارد؛
- محتوای حذفشده جایگزین ندارد.
اما در اکثر سایتها مدیریت صحیح 404 و Redirect 301 کافی است.
خطای Soft 404 چیست؟
Soft 404 یکی از موضوعات مهم سئو است.
در Soft 404:
سرور به جای:
HTTP 404یک پاسخ:
HTTP 200برمیگرداند، اما محتوای صفحه نشان میدهد که صفحه وجود ندارد.
مثال:
یک صفحه با متن:
محصول موردنظر پیدا نشد
اما Status Code:
200 OKاست.
گوگل ممکن است چنین صفحهای را Soft 404 تشخیص دهد.
مشکل Soft 404:
- بودجه Crawl هدر میرود؛
- صفحات بیارزش وارد ایندکس میشوند؛
- کیفیت کلی سایت کاهش پیدا میکند.
چگونه خطای 404 را در Google Search Console بررسی کنیم؟
Search Console یکی از بهترین ابزارها برای بررسی وضعیت Crawl سایت است.
مسیر:
Google Search Console
→ Pages
→ Not indexed
→ Not found (404)در این بخش میتوانید URLهایی که گوگل آنها را پیدا نکرده مشاهده کنید.
برای هر URL:
بررسی کنید:
آیا صفحه باید وجود داشته باشد؟
اگر بله:
- مشکل URL را رفع کنید.
- لینک داخلی را اصلاح کنید.
آیا صفحه حذف شده است؟
اگر جایگزین دارد:
- Redirect 301 ایجاد کنید.
اگر ندارد:
- اجازه دهید 404 باقی بماند.
بعد از رفع 404 در Search Console چه کنیم؟
پس از اصلاح مشکل:
میتوانید URL را بررسی کنید.
از ابزار:
URL Inspectionاستفاده کنید.
سپس:
- بررسی کنید صفحه قابل دسترسی است؛
- در صورت نیاز Request Indexing ارسال کنید.
توجه کنید که Validation در Search Console به معنی ایندکس فوری نیست؛ فقط به گوگل اعلام میکند مشکل بررسی شود.
چکلیست سریع رفع خطای 404
اگر با خطای 404 مواجه شدید:
| سؤال | اقدام |
|---|---|
| آیا URL اشتباه است؟ | آدرس را اصلاح کنید |
| آیا صفحه حذف شده؟ | Redirect یا 404 صحیح |
| آیا صفحه مهم است؟ | Redirect 301 |
| آیا وردپرس است؟ | Permalink را Save کنید |
| بعد از Migration رخ داده؟ | Rewrite و DNS را بررسی کنید |
| لینک داخلی خراب است؟ | لینک را اصلاح کنید |
| گوگل هنوز URL قدیمی را میبیند؟ | Search Console بررسی شود |
| تعداد 404 زیاد است؟ | Crawl Audit انجام دهید |
چگونه از ایجاد خطای 404 جلوگیری کنیم؟
پیشگیری همیشه بهتر از اصلاح تعداد زیادی URL خراب است.
قبل از حذف صفحات:
- بررسی کنید آیا URL بازدید دارد؟
- آیا بکلینک دارد؟
- آیا جایگزین دارد؟
هنگام تغییر URL:
- Redirect 301 بسازید.
- لینکهای داخلی را اصلاح کنید.
- Sitemap را بهروزرسانی کنید.
هنگام انتقال سایت:
- Redirect Map تهیه کنید.
- URLهای قدیمی را Crawl کنید.
- قبل از تغییر DNS تست انجام دهید.
بهصورت دورهای:
- Broken Link Audit انجام دهید.
- Search Console را بررسی کنید.
- صفحات مهم را کنترل کنید.
جمعبندی
خطای 404 همیشه یک مشکل نیست؛ گاهی یک پاسخ صحیح از سمت سرور است که میگوید صفحهای دیگر وجود ندارد.
اما زمانی که یک صفحه ارزشمند، یک لینک داخلی مهم یا یک URL دارای اعتبار سئو با 404 مواجه شود، باید آن را مدیریت کرد.
برای رفع اصولی خطای 404:
- علت ایجاد URL خراب را پیدا کنید.
- مشخص کنید صفحه باید برگردد یا حذف شود.
- برای صفحات ارزشمند Redirect 301 ایجاد کنید.
- لینکهای داخلی خراب را اصلاح کنید.
- وضعیت Crawl سایت را در Google Search Console بررسی کنید.
در سایتهای وردپرسی، مشکلات Permalink، Migration، افزونهها و تنظیمات Server از رایجترین دلایل ایجاد 404 هستند.
اگر سایت شما بعد از انتقال هاست، تغییر دامنه یا تغییر تنظیمات سرور با تعداد زیادی خطای 404 مواجه شده است، بررسی همزمان ساختار URL، DNS، Rewrite Rules و تنظیمات Hosting میتواند سریعترین مسیر حل مشکل باشد.





سایتی در طول 1 ماه خطای 404 داشته باشه یعنی تو گوگل به اوت میره از نظر سئو؟؟؟ یا نه؟
سلام. مطمئناً روی سئو سایتتون تاثیر منفی میزاره، پیشنهاد میکنیم هرچه سریع تر رفع کنید خطارو
ممنون بسیار عالی
همه ی سایتها اگر کلید مخصوص اوتوماتیک برای حل این مشکلات در برنامه نویسی بگذارند که کاربر این کلید رو بزنه و اتوماتیک مشکلش رو خود سایت بدون معطلی حل کنه که کاربر اذیت نشود بهتر است ممنونم
اگر اینجوری بود که کاری میکردن هر جا نیاز بود اتومات این کلید زده بشه.
متاسفانه این مشکل دلایل مختلفی داره و نمیشه یک راه حل برای همه موارد داد.
سلام.وقت بخیر.من سایتموتازه راه اندازی کردم ودرسرچ کنسول براش کلی خطای 404پیداشده،که البته اون لینکاهم تعدادشون خیلی زیاده وبه موضوع سایتم بی ربطه.بهترین راه برای رفع اون خطاهاچیه که به سئوی سایتم لطمه نزنه؟
سلام
از طریق نرم افزار screaming frog بررسی کنید این لینک ها از کجا اومدن و مبدا لینک ها رو درست کنید تا این خطا برطرف بشه.
یابهتره ریدایرکتی کنم که معنیش دردست تعمیرهست؟چون سایتم روقراره تا3ماه دیگه بیخیالش بشم فقط واسه بالاآوردن سایت وگذاشتن اون تورزومم میخام.
سلام
منظورتون رو دقیق متوجه نشدم.
اصلنم نمیدنم اون محتواهاچطورپیداشدن.شایداونایی ان که مربوط به قالب سایتم هستن ،وقتی که سایتم توی لوکال هاست بود،همون موقعم حذفشون کردم.
سلام
منظورتون چه محتوایی هست؟ لطفا دقیق تر توضیح بدین تا بتونم راهنماییتون کنم.