اگر صفحه اصلی سایت وردپرسی بدون مشکل باز میشود اما سایر صفحات، نوشتهها یا محصولات با خطای 404 مواجه میشوند، یکی از رایجترین دلایل اختلال در ساختار پیوندهای یکتا یا قوانین بازنویسی آدرسهاست. در بسیاری از موارد، تنها با ذخیره مجدد تنظیمات پیوند یکتا میتوان مشکل را برطرف کرد.
چرا صفحات داخلی وردپرس خطای 404 میدهند؟
یکی از مشکلات رایج در سایتهای وردپرسی این است که صفحه اصلی سایت بهدرستی نمایش داده میشود، اما هنگام ورود به صفحات داخلی مانند نوشتهها، برگهها، دستهبندیها یا محصولات با خطای 404 – Page Not Found مواجه میشویم.
این اتفاق معمولاً به این معنا نیست که صفحات سایت حذف شدهاند. در بسیاری از موارد، مشکل مربوط به نحوه مدیریت و بازنویسی آدرسها در وردپرس است.
وردپرس برای ایجاد آدرسهای خوانا و مناسب سئو از ساختاری به نام Permalink یا پیوند یکتا استفاده میکند. قوانین مربوط به این آدرسها در سرور ذخیره میشوند و اگر به هر دلیلی این قوانین بهدرستی بارگذاری نشوند، سرور نمیتواند آدرس صفحات داخلی را به وردپرس هدایت کند.
در سرورهای Apache، بخشی از این فرآیند معمولاً از طریق فایل .htaccess انجام میشود.
یک مثال ساده از مشکل
فرض کنید صفحه اصلی سایت از آدرس زیر بدون مشکل باز میشود:
example.com
اما زمانی که وارد یکی از صفحات داخلی میشوید:
example.com/about-us/
با خطای 404 مواجه میشوید.
اگر مطمئن هستید صفحه موردنظر در وردپرس وجود دارد، یکی از اولین اقداماتی که باید انجام دهید بازنشانی تنظیمات پیوندهای یکتا است.

راهحل سریع: ذخیره مجدد تنظیمات پیوند یکتا
وارد پیشخوان وردپرس شوید و از منوی مدیریت به مسیر زیر بروید:
تنظیمات ← پیوندهای یکتا
در این صفحه نیازی نیست ساختار آدرسها را تغییر دهید.
تنها کافی است به پایین صفحه بروید و روی گزینه «ذخیره تغییرات» کلیک کنید.
وردپرس با انجام این کار قوانین مربوط به Rewrite و ساختار URLها را مجدداً ایجاد یا بازنشانی میکند. در بسیاری از سایتهایی که روی Apache اجرا میشوند، این کار باعث بهروزرسانی قوانین موردنیاز در فایل .htaccess نیز میشود.
پس از ذخیره تنظیمات، یکی از صفحاتی را که قبلاً خطای 404 نمایش میداد دوباره باز کنید.
در بسیاری از مواقع مشکل در همین مرحله برطرف میشود.
چرا این روش مؤثر است؟
وردپرس برای تشخیص اینکه هر URL باید چه محتوایی را نمایش دهد، مجموعهای از قوانین بازنویسی یا Rewrite Rules دارد.
این قوانین ممکن است بعد از انتقال سایت، تغییر دامنه، نصب یا حذف افزونه، تغییر قالب، تغییر ساختار پیوندهای یکتا، بازیابی بکاپ یا برخی تغییرات مربوط به سرور دچار اختلال شوند.
با ذخیره مجدد صفحه پیوندهای یکتا، وردپرس این قوانین را دوباره تولید میکند و به همین دلیل بسیاری از خطاهای 404 صفحات داخلی بدون نیاز به تغییر دیگری برطرف میشوند.
اگر مشکل همچنان برطرف نشد چه کنیم؟
اگر بعد از ذخیره مجدد پیوندهای یکتا همچنان صفحات داخلی خطای 404 نمایش میدهند، باید موارد دیگری نیز بررسی شوند.
در سرورهای Apache، فایل .htaccess باید وجود داشته باشد و سرور اجازه خواندن آن را داشته باشد. همچنین ماژول mod_rewrite باید فعال باشد.
اگر سایت روی Nginx اجرا میشود، فایل .htaccess نقشی در مدیریت URLها ندارد و باید Rewrite Rules در تنظیمات Nginx بررسی شوند.
تداخل برخی افزونههای امنیتی، کش، سئو یا ریدایرکت نیز میتواند باعث ایجاد خطای 404 شود. در چنین شرایطی بررسی تنظیمات افزونهها و پاکسازی کش سایت و سرور میتواند مفید باشد.
جمعبندی
اگر در یک سایت وردپرسی صفحه اصلی باز میشود اما سایر لینکها خطای 404 نمایش میدهند، یکی از اولین و سادهترین اقداماتی که باید انجام دهید این است که وارد:
تنظیمات ← پیوندهای یکتا
شوید و بدون تغییر هیچ گزینهای، روی «ذخیره تغییرات» کلیک کنید.
این کار باعث بازنشانی Rewrite Rules وردپرس میشود و در بسیاری از موارد مشکل لینکهای داخلی را در کمتر از یک دقیقه برطرف میکند.
اگر این موضوع به نیاز پروژه شما نزدیک است، میتوانیم درباره مسیر اجرا صحبت کنیم.
رزرو جلسه