هنگامی که صفحات آدرس خود را به طور دائم یا موقت تغییر داده اند، تغییر مسیر URL ضروری است. با این حال، گاهی اوقات وب سایت شما ممکن است در یک حلقه تغییر مسیر گیر کند. اگر این اتفاق بیفتد، ممکن است با خطای “redirects too many” یا خطای Redirects بیش از حد روبرو شوید که مانع از دسترسی شما به صفحات وب می شود.
خوشبختانه، می توانید از چندین روش برای رفع این مشکل تغییر مسیر استفاده کنید. با صرف زمان برای تشخیص علت خطا، می توانید نسبتاً سریع آن را حل کنید.
در این مقاله از سایت بیلدر، ما به دلایل رایج خطای “redirects بیش از حد” در وردپرس و نحوه رفع آن ها خواهیم پرداخت. همچنین توضیح خواهیم داد که چگونه از تکرار مشکل در آینده جلوگیری کنیم.
چه چیزی باعث خطای Redirects بیش از حد در وردپرس می شود؟
خطای redirects بیش از حد زمانی رخ می دهد که وب سایت وردپرس شما در حلقه های تغییر مسیر گیر کند. برای مثال، ممکن است سعی کند شما را به URL دیگری بفرستد که به پیوندی کاملاً متفاوت اشاره دارد. اگر این روند ادامه یابد، ممکن است مرورگر شما خطا را ایجاد کند و سایت را بارگیری نکند.
اگر از موزیلا فایرفاکس استفاده می کنید، خطا معمولاً به صورت “صفحه به درستی هدایت نمی شود” خوانده می شود. از طرف دیگر، در مایکروسافت اج به صورت «این صفحه در حال حاضر کار نمیکند» نمایش داده میشود. در نهایت، کاربران Safari ممکن است با “Safari Can’t Open the Page” مواجه شوند.
برخلاف برخی دیگر از خطاهای رایج وردپرس، “خیلی زیاد” تغییر مسیر” معمولاً مشکل خود را حل نمی کند. به این ترتیب، برای رفع آن باید ریشه های مشکل را عیب یابی کنید.
نحوه رفع خطای “Redirects بیش از حد” در وردپرس (13 روش)
عوامل مختلفی میتوانند باعث ایجاد خطای redirects بیش از حد در وردپرس شوند. بنابراین، ممکن است لازم باشد چند روش مختلف را برای حل آن امتحان کنید. بیایید نگاهی به فهرستی جامع از همه راه حل های ممکن بیندازیم.
بیشتر بخوانید:
1. صفحه را مجبور به بازخوانی کنید
اولین راه حل بسیار ساده است. می توانید مرورگر خود را مجبور کنید که نسخه جدیدی از صفحه را بازیابی و بازیابی کند. این روش همه داده های ذخیره شده را لغو می کند و آخرین اطلاعات موجود برای وب سایت وردپرس را نمایش می دهد.
شاید دوست داشته باشید ابتدا این روش را امتحان کنید زیرا سریع است و با هیچ استراتژی دیگری تداخل نخواهد داشت. همچنین فوراً متوجه خواهید شد که آیا مشکل را برطرف کرده است یا خیر.
میتوانید از میانبرهای صفحهکلید زیر برای بهروزرسانی اجباری در مرورگر خود استفاده کنید:
- Google Chrome (ویندوز): Ctrl + F5
- Google Chrome (Mac): Command + Shift + R
- Safari: Command + Option + R
- فایرفاکس (ویندوز): Ctrl + F5
- Firefox (Mac): Command + Shift + R
- Microsoft Edge: Ctrl + F5
این تنها کاری است که باید انجام دهید. با این حال، اگر این روش ساده کار نکرد، میتوانید از طریق راهنمای عیبیابی ادامه دهید.
2. کوکی ها را در سایت حذف کنید
کوکیها بلوکهای کوچکی از دادهها هستند که وبسایتها را قادر میسازند اطلاعات مربوط به بازدید شما را به خاطر بسپارند. سپس، سایتها از آن دادهها برای سفارشی کردن تجربیات شما استفاده میکنند.
به عنوان مثال، یک پلتفرم تجارت الکترونیک ممکن است برای شما ارسال کند توصیه های در سایت بر اساس خریدها و جستجوهای قبلی شما. به این ترتیب، میتوانید در زمان جستجوی محصولات مرتبط صرفهجویی کنید.
با این حال، گاهی اوقات کوکی ها می توانند روی داده های نادرست نگه داشته شوند. به نوبه خود، این می تواند باعث خطای redirects بیش از حد شود. به این ترتیب، می توانید سعی کنید کوکی ها را از سایت وردپرس حذف کنید.
در Google Chrome، به سه نقطه در بالای منو بروید. سپس، روی تنظیمات کلیک کنید.
به پایین به حریم خصوصی و امنیت بروید و کوکیها و سایر دادههای سایت را انتخاب کنید.
صفحه را به پایین ببرید و مشاهده همه کوکیها و دادههای سایت را انتخاب کنید. با این کار فهرستی از تمام کوکیهایی که سایتهای مختلف با دادههای شما نگهداری میکنند باز میشود.
برای یافتن سایتی که خطای redirects بیش از حد را دارد به پایین بروید. سپس، روی نماد سطل زباله در کنار کوکی مربوطه کلیک کنید تا آن را حذف کنید.
پس از اتمام کار، سعی کنید سایت وردپرس را بازخوانی کنید تا ببینید آیا خطا برطرف شده است.
3. سایت وردپرس یا کش سرور خود را پاک کنید
افزونه کش ذخیرهسازی اطلاعات مربوط به سایت شما را ذخیره میکند دفعه بعد که به آن دسترسی پیدا کردید می تواند سریعتر بارگیری شود. با این حال، حافظه پنهان شما ممکن است داده های قدیمی را در خود نگه دارد و باعث خطای تغییر مسیر شود. بنابراین، می توانید سعی کنید اطلاعات ذخیره شده را پاک کنید تا ببینید آیا مشکل را برطرف می کند یا خیر.
اگر میتوانید به سایت وردپرس خود دسترسی داشته باشید، میتوانید حافظه پنهان را با اختصاصی پاک کنید. برای مثال، میتوانید از WP Super Cache استفاده کنید.
با این حال، خطای تغییر مسیر احتمالاً مانع از ورود شما به داشبورد می شود. بنابراین، ممکن است لازم باشد حافظه پنهان سرور خود را پاک کنید.
4. کش مرورگر خود را پاک کنید
مرورگر شما همچنین اطلاعات کش شده مربوط به وبسایتهایی را که بازدید میکنید، از جمله وبسایت شما، ذخیره میکند. اگر مرورگر شما داده های قدیمی را نگه می دارد، ممکن است لازم باشد برای رفع خطای تغییر مسیر در وردپرس، آن را پاک کنید.
اگر با Chrome کار میکنید، میتوانید به تنظیمات برگردید و به حریم خصوصی و امنیت بروید. در اینجا، روی پاک کردن دادههای مرور کلیک کنید.
با این کار پنجره جدیدی ظاهر می شود که به شما امکان می دهد داده هایی را که می خواهید حذف کنید انتخاب کنید. هر مورد را با علامت زدن کادر کنار آن انتخاب کنید و سپس روی پاک کردن داده ها کلیک کنید.
پس از اتمام کار، سعی کنید سایت خود را مجدداً بارگیری کنید تا ببینید آیا خطای “redirects too much” برطرف شده است یا خیر.
بیشتر بخوانید:
5. علت حلقه تغییر مسیر را تعیین کنید
اگر روشهای قبلی خطای تغییر مسیر را حل نکرد، ممکن است بخواهید سعی کنید مشکل را تشخیص دهید. در غیر این صورت، ممکن است تلاش زیادی را صرف استراتژیهای وقتگیر بیشتری کنید که ممکن است خطا را برطرف نکنند.
چند روش مختلف وجود دارد که می تواند علت حلقه های تغییر مسیر را تعیین کند. ابتدا، میتوانید URL سایت خود را در ابزار Redirect Checker وارد کنید.
این برنامه آنلاین رایگان به شما امکان می دهد چندین URL را وارد کرده و وضعیت آنها را بررسی کنید. همچنین میتوانید عامل کاربر، مانند مرورگر، رباتهای موتور جستجو، و دستگاههای تلفن همراه خود را مشخص کنید.
وقتی URL خود را وارد کردید، میتوانید وضعیت یا کدهای خطا مرتبط با سایت خود را در پایین صفحه مشاهده کنید.
از طرف دیگر، برخی از افزونه های مرورگر می توانند ماهیت تغییر مسیرها را در سایت های مختلف به شما نشان دهند. برای مثال، مسیر تغییر مسیر پرچمهای برنامه افزودنی Chrome پیامهای خطا را در زمان واقعی هدایت میکنند.
با این حال، این ابزارها ممکن است همیشه به شما نگویند که چرا خطای تغییر مسیر شما رخ می دهد. اگر چنین است، میتوانید با سایر استراتژیهای این راهنمای عیبیابی ادامه دهید.
6. به طور موقت افزونه های وردپرس خود را غیرفعال کنید
افزونههای وردپرس ابزارهای مفیدی هستند که میتوانند جدید را معرفی کنند. قابلیت های وب سایت شما با این حال، این افزونهها همچنین میتوانند باعث مشکلات بسیاری مانند خطای redirects بیش از حد شوند.
همه می توانند افزونه های وردپرس را توسعه دهند و به اشتراک بگذارند. به این ترتیب، ممکن است به طور تصادفی یکی را دانلود کنید که حاوی کد معیوب است. این افزونه ها نیز به روز رسانی های مکرری دارند. اگر افزونه های خود را به روز نکرده اید، ممکن است باعث ایجاد مشکل در سایت شما شوند.
اگر اخیراً افزونه های جدیدی را به سایت وردپرس خود اضافه کرده اید، ممکن است دوست داشته باشید این روش را امتحان کنید. اگر چنین است، احتمالاً ایده خوبی از عامل ایجاد مشکل خواهید داشت. حتی اگر به افزونه خاصی مشکوک نیستید، میتوانید از مراحل زیر برای رفع مشکل استفاده کنید.
پس از اینکه کلینت SFTP را به سایت خود وصل کردید، باید برای پیدا کردن پوشه ای که افزونه های شما را در خود نگه می دارد. معمولاً آن را در wp-content > افزونهها پیدا خواهید کرد. در اینجا، یک سری پوشه با نام پلاگین های نصب شده خود را مشاهده خواهید کرد.
نام پوشه plugins را به “plugins-off” تغییر دهید. با این کار تمام افزونه های شما غیرفعال می شود. اکنون باید بتوانید به داشبورد وردپرس خود دسترسی داشته باشید.
بعد، نام پوشه پلاگین خود را به عنوان اصلی آن تغییر دهید. سپس فرآیند فعال سازی مجدد هر افزونه را از داشبورد وردپرس خود انجام دهید تا ببینید کدام یک خطای “redirects too many” را ایجاد می کند.
اگر افزونه مشکلی پیدا کردید، باید آن را غیرفعال نگه دارید. همچنین باید یک گزینه جایگزین برای وب سایت خود پیدا کنید.
بیشتر بخوانید:
7. تنظیمات سایت وردپرس خود را بررسی کنید
گاهی اوقات یک خطا در تنظیمات سایت وردپرس شما می تواند باعث ایجاد خطای Redirects بیش از حد شود. برای مثال، وب سایت شما ممکن است به نام دامنه اشتباه اشاره کرده باشد.
میتوانید تنظیمات سایت خود را در داشبورد وردپرس خود بررسی کنید. اگر میتوانید به آن دسترسی پیدا کنید، وارد شوید و به تنظیمات > عمومی بروید. سپس دو فیلد برای آدرس وردپرس (URL) و آدرس سایت (URL) خواهید دید.
این دو آدرس باید یکسان باشند مگر اینکه بخواهید وردپرس دایرکتوری خود را داشته باشد. . اگر URL ها با هم مطابقت ندارند و باید مطابقت داشته باشند، می توانید تنظیمات را به صورت دستی تغییر دهید.
به وبسایت خود با استفاده از SFTP مانند قبل دسترسی پیدا کنید. سپس، فایل wp-config.php را در یک ویرایشگر متن پیدا کرده و باز کنید.
در مرحله بعد، کد زیر را جایگذاری میکنید. در فایل:
define( 'WP_HOME', 'http://example.com' ); define('WP_SITEURL', 'http://example.com');
URL های مثال را با آدرس های صحیح جایگزین کنید و فایل را ذخیره کنید. سپس وب سایت خود را مجدداً بارگیری کنید و ببینید آیا با این کار مشکل حل شده است یا خیر.
8. گواهی SSL خود را بررسی کنید
اگر اخیرا سایت خود را به HTTPS منتقل کردید، مراحل مختلفی وجود دارد که باید تکمیل کنید. متأسفانه، اگر برخی از آنها را از دست بدهید یا برخی تنظیمات را به اشتباه پیکربندی کنید، میتوانید خطای «تغییر مسیرهای بسیار زیاد» را در وردپرس فعال کنید.
به عنوان مثال، اگر گواهی Secure Sockets Layer (SSL) خود را نصب نکرده باشید. به درستی، ممکن است باعث ایجاد خطای Redirects بیش از حد شود. اگر اصلاً آن را اضافه نکرده باشید، سایت شما به طور خودکار در یک حلقه تغییر مسیر گیر می کند.
اما، ممکن است برخی مشکلات جزئی در نصب گواهینامه SSL شما نیز وجود داشته باشد. . برای مثال، ممکن است گواهیهای میانی را که با گواهی اصلی شما کار میکنند، اشتباه نصب کرده باشید.
با استفاده از ابزاری مانند آزمون سرور Qualys SSL می توانید بررسی کنید که آیا گواهی SSL شما به درستی نصب شده است.
این برنامه دامنه شما را اسکن میکند تا مشکلات مربوط به SSL را بیابد. این فرآیند ممکن است چند دقیقه طول بکشد، اما به شما در مورد هر گونه مشکل در نصب گواهی شما هشدار می دهد.
9. پیوندهای رمزگذاری شده خود را به روز کنید
اگر به تازگی از HTTP به HTTPS تغییر داده اید، باید پیوندهای خود را تغییر مسیر دهید. در غیر این صورت، این URL ها به مکان هایی اشاره می کنند که دیگر در وب سایت شما وجود ندارند.
بسیاری از کاربران از افزونه هایی استفاده می کنند که می توانند این پیوندها را به طور خودکار تغییر دهند. برای مثال، میتوانید از Better Find and Replace استفاده کنید. .
با این حال، استفاده از یک افزونه می تواند خطرناک باشد. اگر افزونه انتخابی شما با کد یا بهروزرسانیهای خود مشکلی داشته باشد، میتواند تغییر مسیرهای شما را به اشتباه پیکربندی کند و خطای redirects بیش از حد را ایجاد کند.
به این ترتیب، توصیه می کنیم پیوندهای سخت کد شده خود را به صورت دستی به روز کنید. می توانید این کار را با روش جستجو و جایگزینی در وردپرس انجام دهید.
10. تغییر مسیرهای HTTPS را در سرور خود بررسی کنید
قوانین سرور تغییر مسیر HTTPS همچنین میتوانند باعث خطای Redirects بیش از حد در وردپرس شوند. این تنظیمات ممکن است هنگام انتقال سایت خود به اشتباه پیکربندی شده باشند.
به عنوان مثال، ممکن است تنظیمات به درستی پیوندهای شما را به HTTPS هدایت نکنند. به این ترتیب، باید آنها را اصلاح کنید.
اگر میزبان شما از سرور آپاچی استفاده میکند، باید فایل .htaccess خود را ویرایش کنید. آن را در سرویس گیرنده SFTP خود بیابید و فایل را در یک ویرایشگر متن باز کنید. سپس، میتوانید کد زیر را وارد کنید:
RewriteEngine روشن است RewriteCond %{HTTPS} تخفیف RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
این کد باعث می شود که همه پیوندهای HTTP به طور خودکار به HTTPS هدایت شوند. فایل .htaccess را ذخیره کنید و سعی کنید سایت وردپرس خود را دوباره بارگیری کنید. اگر همچنان خطای Redirects بیش از حد ایجاد می کند، باید راه حل دیگری را امتحان کنید.
از طرف دیگر، میتوانید تغییر مسیرهای HTTPS خود را در سرورهای Nginx تنظیم کنید. اگر مطمئن نیستید که میزبان شما از کدام نوع سرور استفاده می کند، ممکن است بخواهید ابتدا با شرکت بررسی کنید.
در Nginx، باید فایل config را تنظیم کنید. طبق معمول آن را با کلاینت SFTP خود باز کنید و سپس فایل را پیدا کنید. کد زیر را برای تنظیم تغییر مسیرها وارد کنید:
server { listen 80; server_name domain.com www.domain.com; بازگشت 301 https://domain.com$request_uri; }
فایل را ذخیره کنید و سایت وردپرس خود را دوباره بارگیری کنید. اگر مشکل را برطرف نکرد، به حرکت در این راهنمای عیبیابی ادامه دهید.
بیشتر بخوانید:
11. تنظیمات سرویس خود را بررسی کنید
فرض کنید از یک سرویس شخص ثالث مانند شبکه تحویل محتوا (CDN) استفاده می کنید. در این صورت، تنظیمات آن ممکن است باعث خطای Redirects بیش از حد شود. برای مثال، Cloudflare یک گزینه محبوب است که میتواند عملکرد و امنیت وب سایت خود را بهبود بخشید.
اگر تنظیم SSL انعطافپذیر و یک گواهی SSL از منبع دیگری (مانند ارائهدهنده میزبانی خود) را فعال کرده باشید، Cloudflare میتواند خطای “redirects بیش از حد” را ایجاد کند.
در این سناریو، درخواستهای سرور میزبان شما از قبل URLها را از HTTP به HTTPS هدایت میکنند. با این حال، با تنظیم SSL انعطاف پذیر، تمام درخواست های سرور در HTTP ارسال می شوند. به این ترتیب، حلقه های تغییر جهت بین فرآیندهای مختلف وجود دارد.
به این ترتیب، اگر گواهی SSL از منبع شخص ثالث دارید، استفاده از تنظیمات SSL انعطافپذیر را توصیه نمیکنیم. در عوض، تنظیمات Cloudflare Crypto خود را تغییر دهید و Full یا Full (سخت) را انتخاب کنید. انجام این کار به صورت خودکار درخواست ها را در HTTPS ارسال می کند.
علاوه بر این، ممکن است بخواهید همیشه از HTTPS استفاده کنید قانون در Cloudflare. این سایت شما را مجبور می کند تا تمام درخواست ها را در HTTPS ارسال کند. بنابراین، از ایجاد حلقه تغییر مسیر و ایجاد خطای وردپرس جلوگیری می کند.
در نهایت، ممکن است بخواهید دوباره بررسی کنید که آیا به درستی پیکربندی تغییر مسیر در Cloudflare. برای مثال، میخواهید مطمئن شوید که دامنه شما به خودش هدایت نمیشود. در غیر این صورت، می تواند یک خطای تغییر مسیر را ایجاد کند.
12. تغییر مسیرها را در سرور خود بررسی کنید
ما قبلاً نحوه بررسی تغییر مسیرهای HTTPS در سرور خود را توضیح دادیم. با این حال، ریدایرکتهای دیگر میتوانند هنگام بارگیری وبسایت وردپرس شما باعث بروز خطای Redirects بیش از حد شوند.
به عنوان مثال، ممکن است تغییر مسیر 301 به اشتباه پیکربندی شده باشد. ممکن است به لینک اصلی اشاره داشته باشد و یک حلقه تغییر مسیر را ایجاد کند که از بارگیری سایت شما جلوگیری می کند. معمولاً میتوانید با بررسی فایلهای config تان، تغییر مسیرهایی مانند این مورد را پیدا کنید.
اگر هاست شما از سرور آپاچی استفاده میکند، ممکن است با فایل .htaccess مشکل داشته باشید. توصیه می کنیم یک مورد جدید با تنظیمات پیش فرض ایجاد کنید.
ابتدا، باید از طریق SFTP به سایت خود دسترسی داشته باشید. فایل .htaccess را پیدا کنید و در صورت اشتباه، یک کپی از آن را ذخیره کنید. می توانید این کار را با تغییر نام آن به چیزی مانند “.htaccess_old” انجام دهید.
در مرحله بعد، باید یک فایل .htaccess جدید بسازید. برای ایجاد تنظیمات پیشفرض، کد زیر را در آن قرار دهید:
# وردپرس را شروع کنید بازنویسی موتور روشن است RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}] RewriteBase / RewriteRule ^index.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule. /index.php [L] # پایان وردپرس
فایل را ذخیره کنید و سایت وردپرس خود را دوباره بارگیری کنید. اگر این فرآیند جواب داد، میتوانید فایل قدیمی .htaccess را حذف کنید و به کار با فایل جدید ادامه دهید.
با این حال، اگر هاست شما از سرور Nginx استفاده می کند، باید روند کمی متفاوت را دنبال کنید. این نوع سرور بسته به ارائهدهنده میزبانی، از فایلهای مختلف config استفاده میکند. توصیه می کنیم با میزبان خود تماس بگیرید تا ببینید کدام یک برای وضعیت شما کاربرد دارد.
13. با ارائه دهنده میزبانی وب خود تماس بگیرید
اگر همه این روشها را امتحان کردهاید و نمیتوانید خطای Redirects بیش از حد را برطرف کنید، ممکن است وقت آن رسیده باشد که کمک بگیرید. ممکن است یک مرحله مهم را از دست داده باشید، یا ممکن است مشکل عمیق تری در مورد سایت وردپرس شما وجود داشته باشد.