رفع مشکل Briefly unavailable for scheduled maintenance. Check back in a minute
رفع مشکل maintenance
گاهی اوقات بعد از آپدیت برخی افزونه ها هنوز صفحه ها در حالت تعمیر باقی خواهد ماند و سایت شما از دسترس خارج خواهد شد برای رفع این مشکل باید وارد سی پنل شوید و فایلی را پاک کنید در ادامه با وبلاگ هاستینجا همراه باشید.
وردپرس از نسخهی ۳٫۷ به بعد، قابلیت آپدیت خودکار به ورژنهای جدید Minor (فرعی) را اضافه کرد. یکی از مشکلات رایج به هنگام بروزرسانی وردپرس به نسخههای جدیدتر در هاست اشتراکی و هاست مخصوص وردپرس این است که در بسیاری از مواقع، به هنگام انجام بروزرسانی، این پروسه با خطای Timeout مواجه میشود و وبسایت در Maintenance Mode باقی میماند. لذا دیگر امکان دسترسی به وبسایت مقدور نمیباشد.
تا چندی پیش، این خطا بیشتر به هنگام انجام بروزرسانیهای خودکار رخ میداد اما اخیراً در بسیاری از مواقعی که پوسته، پلاگین و یا هستهی وردپرس را به صورت دستی بروز میکنید، با یکی از خطاهای زیر مواجه خواهید شد:
1 |
Briefly Unavailable for Scheduled Maintenance. Please check back in a minute. |
1 |
جهت انجام عملیات تعمیرات زمانبندی شده برای مدت کوتاهی در دسترس نیست. یک دقیقه دیگر مراجعه کنید. |
در این مقاله نحوهی رفع این خطاها را شرح میدهیم.
خطای Maintenance چه زمان اتفاق میافتد؟
حالت تعمیر یا Maintenance Mode در اصل یک خطا نیست و از لحاظ فنی این مورد تنها یک صفحهی اطلاعرسانی است. به هنگام پروسهی آپدیت، وردپرس فایلهای مورد نیاز را دانلود و Extract کرده و سپس آنها را نصب میکند. در این هنگام همچنین وردپرس وبسایت را بر روی Maintenance Mode و یا همان حالت تعمیر و بروزرسانی قرار میدهد و عبارت «Briefly unavailable for scheduled maintenance» را در حین بروزرسانی نمایش میدهد.
اگر همه چیز به خوبی پیش رود، این اعلان پس از گذشت چند ثانیه و یا چند دقیقه رفع میشود. با این وجود در برخی مواقع به دلیل پاسخگویی ضعیف وب سرور یا مشکل کمبود Memory یا RAM، اسکریپت مربوط به بروزرسانی با مشکل Timeout مواجه شده و یا به صورت کلی در آن اختلالی بوجود میآید. در این شرایط، وردپرس دیگر فرصت تغییر Maintenance Mode را پیدا نمیکند و این اعلان به صورت ثابت بر روی صفحه نمایش داده میشود.
چگونه Maintenance Error را در وردپرس رفع کنیم؟
اول از همه باید مطمئن شویم بروزرسانی وبسایت وردپرسی به درستی انجام شده است. بروزرسانی ناقص و ناتمام میتواند موجب بروز مشکلاتی به هنگام خروج از حالت Maintenance شود. پس در صورتی که پس از خروج از حالت Maintenance با خطا مواجه شدید، از طریق FTP و به صورت دستی وبسایت را بروزرسانی کنید.
تنها کاری که برای رفع مشکل مواجهه با خطای Maintenance Mode لازم است انجام دهید این است که فایل .maintenance را از فولدر اصلی سایت حذف کنید. برای اینکار وارد دایرکتوری روت شوید (مسیری که وردپرس را در آن نصب کردهاید؛ برای مثال Public_html) و سپس فایل .maintenance را یافته و حذف کنید. البته فایل .maintenance یک فایل Hidden یا مخفی است و ممکن است به صورت عادی امکان مشاهدهی آن را نداشته باشید.
خلاصه اینکه CMS محبوب و قدرتمند WordPress، به هنگام انجام بروزرسانی فایلی به نام .maintenance ایجاد میکند که نشان میدهد وبسایت در وضعیت Maintenance قرار دارد. این وضعیت ممکن است به دلیل وجود مشکلی ادامه پیدا کند و تا زمانی که این فایل به صورت دستی از سرور حذف نشود، کاربرانتان به هنگام مراجعه به وبسایت با اعلان مربوط به آن مواجه شوند.
چگونه متن اعلان Maintenance Mode را سفارشی سازی کنیم؟
سادهترین راه برای تغییر متن اعلان وضعیت Maintenance، نصب پلاگین Maintenance Mode و یا موارد مشابه است. بدین صورت که پس از نصب این پلاگین (افزونه)، وبسایت را پیش از بروزرسانی یا هر تغییری که ممکن است به صورت موقت وبسایت را از دسترس خارج کند، از طریق پلاگین بر روی Maintenance Mode قرار میدهید. اینگونه از طریق پلاگین نمایش داده میشود که وبسایت به دلیل برنامهی زمانبندی شده، برای مدتی مشخص (برای مثال ۱ روز یا چند دقیقه) از دسترس خارج است و از کاربران میخواهید تا طی این مدت منتظر بمانند تا وبسایت مجددا در دسترس قرار گیرد.
گرچه ممکن است تمایل به تغییر وضعیت وبسایت به صورت دستی به Maintenance Mode نداشته و یا همچنین کلاً قصد نصب پلاگینهای اضافه نداشته باشید. در این صورت میتوانید یک صفحهی Maintenance Mode ایجاد کنید. برای انجام اینکار، در سیستم شخصی خود، فایل جدیدی به نام maintenance.php ایجاد کتید. سپس کد زیر را درون این فایل قرار دهید:
1 2 3 4 5 6 7 8 9 10 11 12 13 |
<?php $protocol = $_SERVER["SERVER_PROTOCOL"]; if ( 'HTTP/1.1' != $protocol && 'HTTP/1.0' != $protocol ) $protocol = 'HTTP/1.0'; header( "$protocol 503 Service Unavailable", true, 503 ); header( 'Content-Type: text/html; charset=utf-8' ); ?> <html xmlns="http://www.w3.org/1999/xhtml"> <body> <h1>We are updating the site, please check back in 20 minutes.</h1> </body> </html> <?php die(); ?> |
این فایل را در مسیر wp-content هاست خود آپلود کنید. دیگر هر زمان در حال بروزرسانی وبسایت وردپرسی خود بودید، وردپرس این صفحه را نمایش خواهد داد. در صورتی که قصد دارید متن نمایشی را تغییر دهید، عبارت درون تگ <h1> یعنی «We are updating the site, please check ack in 20 minutes» را تغییر دهید. همچنین میتوانید با استفاده از CSS هر استایل و شکلی مدنظرتان بود، بر روی این صفحه لحاظ کنید.