راهنمای حل خطای معروف ERR_CONNECTION_TIMED_OUT (قسمت دوم)

راهنمای حل خطای معروف ERR_CONNECTION_TIMED_OUT

راهنمای حل خطای ERR_CONNECTION_TIMED_OUT (قسمت دوم)

در قسمت قبل توضیح دادیم که بر اساس documentation وب سایت wordpress خطای ERR_CONNECTION_TIMED_OUT زمانی اتفاق می افتد که وب سایت شما بار کاری بیش از حد توانش را داشته باشد. این مسئله معمولا در هاست های اشتراکی اتفاق می افتد که مموری سرور را محدود می کنند. در واقع زمانی که شما به وب سایت خاصی می روید (ورود آدرس در مرورگر) مرورگر تا حدود 30 ثانیه سعی می کند به آدرس وارد شده متصل شود اما بعد از آن اتصال را قطع کرده و خطای ERR_CONNECTION_TIMED_OUT را نمایش می دهد. البته این خطا معمولا به شکل هایی غیر از خود این خطا نمایش داده می شود! به طور مثال در گوگل کروم خطایی شبیه به This site can’t be reached. Domain.com took too long to respond را دریافت می کنید.

ما راه حل های متعددی را برای حل مشکل شما ارائه دادیم و در این جلسه می خواهیم راه حل های بیشتری را نیز با شما بررسی کنیم!

قدم 5: عملیات flush کردن DNS ها

این کار شبیه به پاک کردن کش (cache) مرورگر است اما در واقع کش DNS ها را پاک می کنیم. به طور مثال امکان دارد که URL شما در سرور DNS یا کامپیوتر خودتان تبدیل به IP صحیح سایت نمی شود بنابراین به چنین مشکلی برمی خورید.

کاربران ویندوز برای انجام این کار باید command prompt را باز کرده و دستور زیر را در آن تایپ کنند:

ipconfig /flushdns
اجرای دستور flush کردن DNS ها
اجرای دستور flush کردن DNS ها

پیام Successfully flushed the DNS resolver Cache یعنی عملیات موفقیت آمیز بوده است.

کاربران مک نیز باید ترمینال خود را باز کرده و دستور زیر را در آن تایپ کنند:

dscacheutil -flushcache
پاک کردن کش DNS برای کاربران مک از طریق ترمینال
پاک کردن کش DNS برای کاربران مک از طریق ترمینال

در مک هیچ پیامی مبنی بر موفقیت آمیز بودن نمایش داده نمی شود.

قدم 6: فایل های هاست خود را چک کنید

هر کامپیوتری فایلی دارد که به فایل local hosts معروف است و دارای DNS های خاص برای وب سایت های خاصی است. معمولا فقط زمانی این فایل را ویرایش می کنیم که بخواهیم دامنه هایمان را روی یک سرور جدید بگذاریم. این فایل ممکن است طی عملیات های ناخواسته و مختلفی تغییر پیدا کند بنابراین بهتر است که این فایل را نیز چک کنیم.

این نوع فایل ها معمولا دسترسی سطح administrator می خواهند بنابراین برای ویرایش آن ها ابتدا ویرایشگر خود را به صورت run as administrator باز کنید. سپس به آدرس زیر بروید:

C:\Windows\System32\drivers\etc\

در اینجا فایل hosts را خواهید دید:

فایل hosts در ویندوز
فایل hosts در ویندوز

اگر وب سایت مورد نظر شما درون این فایل قرار داشت، حتما آن را حذف کرده و فایل را دوباره ذخیره کنید.

برای کاربران مک هم پیشنهاد می کنم که از نرم افزار رایگان Gas Mask استفاده کنند تا کارشان راحت تر شود، در غیر این صورت باید Terminal را باز کرده و دستور زیر را در آن تایپ کنید:

sudo nano /private/etc/hosts

مطمئن شوید که وب سایت مورد نظر شما در لیست برگردانده شده وجود ندارد.

قدم 7: کش مرورگر را پاک کنید

همانطور که می دانید مرورگرها اطلاعات خاصی مثل کوکی ها و تاریخچه ی بازدید را درون خودشان ذخیره می کنند تا دفعات بعد نیاز به دانلود دوباره ی موارد نداشته باشیم. قبل از پاک کردن کش های مرورگر بهتر است یک پنجره ی incognito در مرورگر خود باز کنید. این پنجره باعث می شود از هیچ cache خاصی استفاده نشود. اگر مشکل شما در incognito از بین رفت یعنی مشکل از کش مرورگر است اما اگر باز هم همان مشکل را داشتید، کش مرورگر را رها کنید.

پاک کردن حافظه ی کش مرورگرها بسیار ساده است. به طور مثال در کروم می توانیم بر اساس تصاویر زیر عمل کنیم:

گزینه ی پاک کردن کش مرورگر کروم
گزینه ی پاک کردن کش مرورگر کروم
گزینه ی انتخاب تنظیمات حذف کش
گزینه ی انتخاب تنظیمات حذف کش

قدم 8: مقدار maximum execution time را بررسی کنید

مقدار maximum execution time یعنی مدتی که یک اسکریپت PHP اجازه ی اجرا شدن داشته باشد. این مقدار در حالت عادی روی خدمات اشتراکی میزبانی چیزی حدود 30 ثانیه یا کمتر است اما اگر نمی توانید هزینه ی بیشتری برای سرور هایتان بپردازید یکی از راه های جلوگیری از خطای ERR_CONNECTION_TIMED_OUT ارتقا مقدار maximum execution time است. البته از آنجایی که این مقدار باید از فایل php.ini ویرایش شود باید از طریق تیکت ها به پشتیبانی سایت خود اطلاع بدهید. برخی از وب سایت های هاستینگ درخواست شما برای افزایش این مقدار را قبول خواهند کرد.

اگر می خواهید خودتان این مقدار را افزایش دهید چند راه وجود دارد. عمل کردن این روش ها به روش پیکربندی سرور های شما و نوع خدمات میزبانی شما بستگی دارد. در روش اول اگر به فایل php.ini دسترسی دارید باید به دنبال max_execution_time بگردید. برای مثال من آن را روی 300 ثانیه قرار داده ام:

max_execution_time = 300

اگر روش اول کار نکرد به سراغ روش دوم و فایل htaccess. می رویم. این فایل را باز کرده و دستور زیر را در آن کپی کنید:

php_value max_execution_time 300

قدم 9: غیر فعال کردن پلاگین ها

در وب سایت های وردپرسی همیشه پلاگین ها مضنون هر نوع مشکلی هستند بنابراین برای تست کردن این مسئله باید تمام پلاگین های وب سایت خود را غیر فعال کنید. مشکل اینجاست که با دریافت خطای ERR_CONNECTION_TIMED_OUT دیگر به داشبورد ادمین دسترسی ندارد بنابراین تنها راه باقی مانده استفاده از روش های SFTP مثل FileZilla است. زمانی که SFTP خود را راه اندازی کردید به واسطه ی آن به وب سایت وصل شده و به پوشه ی اصلی WordPress بروید (معمولا نام این پوشه چیزی شبیه به public_html یا www یا public و ... است). وارد این پوشه شده و سپس پوشه ی wp-content را پیدا کنید، داخل این پوشه یک پوشه ی دیگر به نام plugins وجود دارد که تمام پلاگین های موجود در سایت شما را در خود دارد (هم فعال ها و هم غیر فعال ها). نام این پوشه را به چیز دیگری مثل plugins.old تغییر دهید تا پلاگین هایتان غیر فعال شود.

اگر با غیرفعال شدن پلاگین ها سایت شما بالا آمد یعنی یکی از پلاگین ها باعث خرابکاری بوده است. حالا باید نام تک تک پوشه های پلاگین ها را تغییر داده و وب سایت را تست کنید تا پلاگین مشکل ساز را پیدا کنید.

قدم 10: برگشتن به تم اصلی

حالا که پلاگین ها را بررسی کرده ایم نوبت به بررسی تم های وردپرس می شود. تم های وردپرس نیز می توانند مانند پلاگین ها باعث خرابکاری شوند اما فرآیند غیرفعال کردن و برگشتن به تم پیش فرض آن قدر ها آسان نیست چرا که نمی توانیم پوشه ی تم ها را تغییر بدهیم. اگر نام پوشه ی تم ها را تغییر بدهیم با خطایی شبیه به The theme directory “theme name” does not exist مواجه می شویم.

برای حل کردن این مشکل باید به phpMyAdmin رفته و به دنبال جدول wp_options بگردید. سپس از بالای صفحه روی سربرگ Search کلیک کرده و در ردیف option_name به دنبال عبارت template بگردید. این فرآیند در تصویر زیر به خوبی مشخص شده است:

جست و جو در پایگاه داده و جدول wp_options - خطای ERR_CONNECTION_TIMED_OUT
جست و جو در پایگاه داده و جدول wp_options

با جست و جوی این عبارت، در زیر ستون option_value نام تم فعلی خود را پیدا خواهید کرد که باید آن را به صورت دستی به تم پیش فرض وردپرس، یعنی twentynineteen، تغییر دهید:

پیدا کردن نام تم وردپرس فعلی شما - خطای ERR_CONNECTION_TIMED_OUT
پیدا کردن نام تم وردپرس فعلی شما

حالا اگر سایت شما بالا می آید یعنی خطا به دلیل نصب تم جدید بوده است.

قدم 11: بالا بردن WP_MEMORY_LIMIT

پارامتر WP_MEMORY_LIMIT به شما اجازه می دهد که حداکثر مقدار مموری مصرفی توسط PHP را مشخص کنید. اگر از خدمات میزبانی اشتراکی استفاده می کنید این مقدار معمولا در حد بسیار پایینی مثل 64M است. اگر ارائه دهنده ی خدمات میزبانی شما اجازه ی تغییر این مقدار را داده است بهتر است به فایل wp-config.php رفته و کد زیر را بالای wp-settings.php اضافه کنید:

define( 'WP_MEMORY_LIMIT', '256M' );
تغییر مقدار محدودیت مموری که باید بالای wp-settings.php اضافه شود - خطای ERR_CONNECTION_TIMED_OUT
تغییر مقدار محدودیت مموری که باید بالای wp-settings.php اضافه شود

با این کار حداکثر حافظه به 256M تغییر می یابد (البته تعیین این مقدار به عهده ی شما است).

توصیه می کنم که حتی اگر مشکلی با خطاهای اینچنینی ندارید باز هم این مقاله را مطالعه کنید چرا که اطلاعات عمومی خوبی به شما (چه برنامه نویس و چه کاربر عادی) ارائه می دهد. امیدوارم که از مطالعه ی آن لذت برده باشید.


منبع: سایت Kinsta

نویسنده شوید

دیدگاه‌های شما (1 دیدگاه)

در این قسمت، به پرسش‌های تخصصی شما درباره‌ی محتوای مقاله پاسخ داده نمی‌شود. سوالات خود را اینجا بپرسید.

سپیده
03 دی 1399
با سلام . وب سایت من از دیشب This site can’t be reachedesfahanmodem.com took too long to respond. رو نشون میده. این دستورالعمل هارم انجام دادم ولی فاید نداشت. چیزی اخیرا هم روش نصب نکردم. با موبایل هم سایت نمیاد. ولی اگه فیلتر شکن رو روشن کنم سایت رو نشون میده. ممنون میشم راهنمایی کنید

در این قسمت، به پرسش‌های تخصصی شما درباره‌ی محتوای مقاله پاسخ داده نمی‌شود. سوالات خود را اینجا بپرسید.