مدیریت یک وب سایت وردپرسی همیشه با چالش های فنی همراه است. یکی از مشکلاتی که شاید وبمسترها، طراحان سایت و متخصصان سئو حداقل یکبار با آن دست و پنجه نرم کرده باشند، خطای Request Timeout است. این خطا معمولاً در حساس ترین مواقع، مثلاً هنگام آپلود یک قالب جدید، نصب افزونه ای سنگین، یا درونریزی (Import) فایل های دمو رخ میدهد و میتواند روند کار شما را به کلی متوقف کند.
اما جای نگرانی نیست! در این بخش از نوین رنک، به شما نحوه رهایی یافتن از این مشکل را به صورت کاملاً تخصصی و گام به گام آموزش خواهیم داد تا بدون نیاز به دانش برنامه نویسی پیچیده، سایت خود را به حالت عادی بازگردانید.
با ما همراه باشید.
خطای Request Timeout چیست و چرا رخ میدهد؟
پیش از آنکه به سراغ راهحل برویم، بهتر است بدانیم با چه چیزی روبرو هستیم. سیستم مدیریت محتوای وردپرس با زبان برنامه نویسی PHP نوشته شده است. سرورها برای جلوگیری از مصرف بیش از حد منابع و جلوگیری از هک شدن یا کرش کردن سرور، محدودیت های زمانی خاصی را برای اجرای اسکریپت های PHP در نظر میگیرند.
وقتی شما دستوری به سرور میدهید (مثلاً آپلود یک فایل حجیم)، سرور شروع به پردازش میکند. اگر این پردازش بیشتر از زمان مجاز تعیین شده (مثلاً 30 ثانیه) طول بکشد، سرور عملیات را متوقف کرده و خطای تایماوت را نمایش میدهد.
خطای مد نظر ما معمولاً با متن دقیق زیر اتفاق می افتد:
Request Timeout
This request takes too long to process, it is timed out by the server. If it should not be timed out, please contact administrator of this web site to increase ‘Connection Timeout’.
ترجمه این پیام این است: “پردازش این درخواست بیش از حد طول کشیده و توسط سرور متوقف (تایم اوت) شده است. لطفاً برای افزایش محدودیت اتصال، با مدیر سایت یا هاستینگ تماس بگیرید.”
دلایل اصلی بروز این خطا:
- آپلود فایل های حجیم: تلاش برای آپلود قالب ها، افزونه ها یا ویدیوهایی که حجم آنها از محدودیت تعیین شده در هاست (Upload Max Filesize) بیشتر است.
- افزونه های سنگین یا تداخل کدهای مخرب: یک افزونه غیراستاندارد ممکن است در یک حلقه بینهایت گیر کند و منابع سرور را درگیر نماید.
- ضعف منابع هاست (سرور): استفاده از هاست های اشتراکی ضعیف با منابع بسیار محدود.
- نسخههای قدیمی PHP: استفاده از نسخههای منسوخ شده PHP که سرعت پردازش پایینی دارند.
آموزش گام به گام حل مشکل Request Timeout در وردپرس
راه حل اصلی برای رفع این خطا، افزایش محدودیت های زمانی و حجمی در پیکربندی سرور (هاست) است. معتبرترین و سریعترین روش برای انجام این کار، ویرایش فایل پیکربندی آپاچی، یعنی فایل .htaccess است. در ادامه این روش را به صورت دقیق بررسی میکنیم.
روش اول: ویرایش فایل .htaccess (بهترین و سریعترین روش)
فایل .htaccess یک فایل مخفی و بسیار مهم در ریشه هاست شماست که دستورات پایه ای وبسایت را کنترل میکند. با اضافه کردن چند خط کد ساده به این فایل، میتوانید محدودیت های سرور را افزایش دهید.
برای این کار مراحل زیر را با دقت دنبال کنید:
گام اول: ورود به هاست
ابتدا وارد کنترل پنل هاست خود (cPanel، DirectAdmin یا Plesk) شوید.
گام دوم: دسترسی به فایل منیجر (File Manager)
به بخش مدیریت فایل ها یا همان File Manager بروید. سپس وارد پوشه public_html (یا مسیری که سایت وردپرسی شما در آن نصب شده است) بشوید.
گام سوم: پیدا کردن فایل .htaccess
در این پوشه به دنبال فایلی به نام .htaccess بگردید.
نکته مهم: از آنجایی که این فایل با نقطه شروع میشود، یک فایل “مخفی” محسوب میگردد. اگر آن را نمیبینید، در cPanel از قسمت بالای صفحه روی دکمه Settings (تنظیمات) کلیک کرده و تیک گزینه Show Hidden Files (dotfiles) را بزنید تا فایل های مخفی نمایش داده شوند.
گام چهارم: ویرایش فایل
روی فایل .htaccess راست کلیک کرده و گزینه Edit (ویرایش) را انتخاب کنید.
گام پنجم: جایگذاری کدهای طلایی
به انتهای کدهای موجود در این فایل بروید و کدهای زیر را دقیقاً به آخرین خط این فایل اضافه کنید:
php_value upload_max_filesize 64M
php_value post_max_size 64M
php_value max_execution_time 300
php_value max_input_time 300
توضیح کد های بالا:
- upload_max_filesize: حداکثر حجم فایلی که میتوانید آپلود کنید را به 64 مگابایت افزایش میدهد.
- post_max_size: حداکثر حجم داده های ارسالی با متد POST را افزایش میدهد.
- max_execution_time 300: این مهمترین بخش کد است! زمان مجاز اجرای اسکریپت ها را به 300 ثانیه (5 دقیقه) افزایش میدهد تا سرور فرصت کافی برای پردازش درخواست شما را داشته باشد.
- max_input_time 300: زمان مجاز برای دریافت داده ها را نیز به 300 ثانیه میرساند.
گام ششم: ذخیره و تست
تغییرات را ذخیره (Save Changes) کنید. حالا به پیشخوان وردپرس خود برگردید و کاری که قبلاً باعث بروز خطا میشد (مثلاً آپلود افزونه) را مجدداً انجام دهید. خواهید دید که مشکل برطرف شده و دسترسی های بیشتری به منابع دارید.
نکته کلیدی: اگر پس از وارد کردن کد بالا همچنان مشکل برطرف نشد و خطای Request Timeout پابرجا بود، عددهای 300 موجود در کد بالا را به مقادیر بالاتری مانند
600افزایش دهید و مجدداً تست کنید.
روش های جایگزین (در صورت عمل نکردن روش اول)
در برخی از هاستینگ ها، اعمال تغییرات از طریق .htaccess مسدود شده است یا سرور از لایت اسپید (LiteSpeed) / انجیناکس (Nginx) استفاده میکند که ممکن است رفتار متفاوتی نشان دهند. در این صورت میتوانید از روش های زیر استفاده کنید:
1. ویرایش فایل wp-config.php
فایل wp-config.php نیز در مسیر public_html قرار دارد. آن را باز کرده و کد زیر را درست قبل از خط /* That's all, stop editing! Happy blogging. */ قرار دهید:
set_time_limit(300);
2. ایجاد یا ویرایش فایل php.ini
اگر هاست شما به شما اجازه دسترسی به فایل php.ini را میدهد (در سیپنل معمولاً بخشی به نام MultiPHP INI Editor وجود دارد)، مقادیر زیر را در آن تنظیم کنید:
max_execution_time = 300
max_input_time = 300
memory_limit = 256M
3. تماس با پشتیبانی هاستینگ
اگر تمام روشهای بالا را امتحان کردید و همچنان پیام “This request takes too long to process” را مشاهده میکنید، به این معناست که شرکت ارائهدهنده هاست شما محدودیتهای سفتوسختی را در سطح سرور (Server-level) اعمال کرده است. تنها راه باقیمانده، ارسال تیکت به پشتیبانی هاست و درخواست افزایش max_execution_time است.
همکاری با نوین رنک
برای مشاوره، استعلام قیمت و شروع همکاری در زمینه سئو (SEO) و طراحی سایت پاسخگوی شما هستیم.
سوالات متداول (FAQ)
۱. آیا اضافه کردن کدها به فایل .htaccess ممکن است باعث خرابی سایت شود؟
۲. من فایل .htaccess را در هاست خود پیدا نمیکنم، چکار کنم؟
۳. تفاوت خطای Request Timeout (408) با Gateway Timeout (504) در وردپرس چیست؟
۴. آیا نصب افزونههای کش تاثیری در رفع این مشکل دارد؟
۵. مقادیر max_execution_time را تا چه عددی میتوانم افزایش دهم؟
نتیجه گیری
خطای Request Timeout در وردپرس گرچه در نگاه اول ترسناک به نظر میرسد، اما به راحتی و با چند خط کد در فایل .htaccess قابل حل است. مدیریت صحیح منابع سرور و انتخاب هاستینگ مناسب، کلید داشتن یک وبسایت پایدار است. امیدواریم این آموزش از مقالات آکادمی نوین رنک مشکل شما را به طور کامل برطرف کرده باشد. در صورت داشتن هرگونه سوال فنی، آن را در بخش نظرات همین مقاله با ما در میان بگذارید.





