رفع مشکل کندی و عدم لود برخی صفحات در افزونه wp rocket
Preload is slow, or some pages are not preloaded at all
افزونه WP Rocket برای کش کردن صفحات سایت وردپرسی از تکنیک پیش بارگذاری صفحه وب یا Preload Cache استفاده میکند. بروز برخی از موارد باعث مشکل کندی سرعت پیش بارگیری صفحه و یا لود نشدن آن میشود.
در این مقاله به بررسی علت کندی سرعت پیش بارگیری صفحات Preload Cache و راه حلهایی برای اشکالزدایی پایین بودن سرعت در افزونه راکت میپردازیم.
سرعت پیش بارگیری صفحه کند است یا کامل اجرا نمیشود
کندی سرعت پیش بارگیری صفحه Preload Cache یا کامل اجرا نشدن آن دو علت اصلی دارد که در زیر به آن میپردازیم :
۱ – محدودیت زمان PHP در وردپرس PHP Time Limit :
در پس زمینه محدودیت زمان اجرای php برای اسکریپت php max execution time و سایر موارد ۳۰ ثانیه است. اگر از این مقدار طولانیتر شود، سرور ادامه پردازش را متوقف میکند. (پیام خطای php maximum execution time of 30 seconds exceeded). زمانی که wp rocket در حال پیش بارگذاری است، اگر اجرای php، پیش فرض روی ۳۰ ثانیه باشد، متوقف میشود. البته نگران نباشید، چون در wp rocket کرون جاب در نظر گرفته شده است. این کرون جاب هر ۵ دقیقه، فرآیند کش را اجرا میکند. بنابراین زمانی که به ۳۰ ثانیه میرسد، مجددا پیش بارگیری میکند. سپس بعد از ۵ دقیقه توقف، این فرآیند را تا انتها انجام میدهد. این فرآیند تا زمانی که عملیات کش، کامل شود تکرار میشود.
۲ – کرون جاب وردپرس WP Cron :
پیش بارگذاری، به کرون وردپرس (Wp Cron) بستگی دارد. این مورد هم به صفحات php وردپرس متکی است. بارگذاری صفحات میتواند از نوع back-end یا front-end باشد. توجه داشته باشید، اگر شما برای مدتی فعالیت در پیشخوان وردپرس نداشته باشید، عملیات پیش بارگیری در wp rocket متوقف میشود.
اشکال زدایی خطاهای Preload Cache
دلایل مختلفی وجود دارد که ممکن است پیش بارگیری (preload) به درستی انجام نشود. افزونه wp rocket در صورتی که موفق به بارگیری و عدم دسترسی به نقشه سایت یا صفحه اصلی نداشته باشد، خطاهایی را نمایش میدهد. نکات زیر به شما برای عیب یابی و سپس رفع خطا کمک میکند.
– صفحهی اصلی یا نقشهی سایت در دسترس نیست
خطاهای رایج: ۴۰۱, ۴۰۳, ۴۰۴, ۵۰۰
- برای اطمینان از نمایش صفحه اصلی یا نقشه سایت، در یک مرورگر دیگر بررسی کنید. در صورت عدم نمایش، به تنظیمات یا میزبانی سایتتان، در مورد عدم دسترسی مراجعه و اعلام نمایید.
- بررسی کنید که آیا آدرسهای مربوط به نقشه سایت به درستی در صفحه Preload اضافه شده اند یا خیر؟
- افزونههای امنیتی و فایروال را بررسی کنید تا مطمئن شوید که دسترسی به سایت شما مسدود نشده باشند.
- بررسی کنید که آیا آی پی سایت یا موارد پیش بارگیری
WP Rocket/Partial_Preload
,WP Rocket/Preload
,WP Rocket/Sitemaps
به درستی انجام میشود. - در صورتی که از قابلیت پسورد گذاری برای سایت استفاده کرده باشید، پیش بارگیری امکان پذیر نیست. بنابراین باید از تنظیمات زیر استفاده کنید و به راحتی این مورد را دور بزنید.
قبل از استفاده، ویرایش کد به صورت دستی لازم است!
۱- نام کاربری را در .htaccess با WPROCKETHELPERS_HTACCESS_USERNAME
قرار دهید و سپس برای رمزعبور WPROCKETHELPERS_HTACCESS_PASSWORD
را تنظیم کنید.
۲- wp-cron.php
باید در لیست مجاز قرار گیرد. برای انجام این مورد میتوانید اینجا وارد شده و از این کد استفاده کنید.
– زمان پاسخگویی سرور کند است
خطای رایج: cURL error 28
وقتی که پیش بارگیری شروع شود، خزنده تلاش میکند به صفحه اصلی یا نقشه سایت شما دسترسی پیدا کند. همچنین ۱۰ ثانیه منتظر میماند. در صورت عدم پاسخ متوقف شده و پیش بارگیری را انجام نمیدهد.
برای اینکه متوجه شوید که زمان پاسخگویی سرور شما مطلوب است یا خیر؟ میتوانید با استفاده از cmd در ویندوز یا ترمینال در سیستم عامل مک، نقشه سایتتان را بررسی کنید. با استفاده از دستور زیر این مورد امکان پذیر است. (توجه داشته باشید بجای example.com آدرس سایت را قرار دهید.)
curl -o /dev/null -s -w %{time_total}\\n http://example.com/sitemap.xml
اگر زمان پاسخگویی آدرسهای سایت بیش از ۱۰ ثانیه است، حافظه php را افزایش دهید. اگر با انجام این موارد همچنان مشکل داشتید، میتوانید با افزونه helper زمان درخواست پیش بارگیری را افزایش دهید.
– خطای مربوط به تنظیمات گواهینامه SSL
خطای رایج: cURL error 60
هنگامی که افزونه برای دریافت آدرس صفحه درخواستی ارسال میکند, ممکن است به خاطر تنظیمات نادرست مربوط به اعتبارسنجی گواهینامه اس اس ال SSL Certificate Validation آن را بلاک کند یا پاسخ ندهد. بدین منظور با میزبان سایت خود تماس بگیرید تا مشکل اعتبارسنجی را برطرف کنند. به صورت موقت میتوانید از طریق پلاگین زیر اعتبارسنجی گواهی اس اس ال را برای این افزونه غیر فعال کنید .
– خطای مربوط به تنظیمات سرور
خطای رایج: cURL error 7
این خطا معمولا به خاطر تنظیمات نادرست در سرور است. پیشنهاد میکنیم برای شناسایی و حل این مشکل به میزبانی هاست اعلام کنید.
نکته: وقتی wp rocket با خطای curl برای پیش بارگذاری نقشه سایت روبرو میشود، به صورت خودکار بارگیری اولیه برای ۱۰۰۰ آدرس در نقشه سایت ناموفق میشود.
– نقشه سایت بدون اطلاعات Empty Sitemap
امکان دارد در نقشه سایت، اطلاعاتی وجود نداشته باشد. پیشنهاد میشود در مرورگرتان به صورت مستقیم، آدرس نقشه سایت را وارد کنید تا از این مورد مطمئن شوید.
– کتابخانه PHP Extension برای نقشه سایت SimpleXML فعال نیست :
اکستنشن SimpleXML برای پیش بارگذاری نقشه سایت باید فعال باشد. در صورتی که فعال نیست با میزبان خود تماس بگیرید.
آیا نیاز است پیش بارگیری در حال انجام را متوقف کنید؟
بعد از اینکه پیش بارگذاری صفحات راه اندازی شد, بر روی صفحه یک پیغام مشاهده خواهید کرد که دکمه ای با عنوان Stop Preload وجود دارد تا اگر نیاز بود اجرای بارگیری را متوقف کنید :
اگر فکر میکنید که پیش بارگیری صفحات Preload Cache به درستی کار نمیکند بعد از کلیک کردن بر روی دکمهی “توقف” اجرا با رفتن به پوشهی کش فایلهای ایجاد شده توسط افزونه را بررسی کنید.
روش بررسی فایلهای ایجاد شده توسط افزونه WP Rocket
برای بررسی فایل های کش که ایجاد شده، ابتدا به فایل منیجر در کنترل پنل هاست و یا از طریق ftp به پوشه زیر بروید:
wp-content/cache/wp-rocket
در داخل پوشه wp rocket که در مسیر بالا ذکر کردیم، باید پوشه فرعی با نام دامنه شما قرار داشته باشد، به عنوان مثال:example.com
در این پوشه می توانید فایل های کش شده را مشاهده کنید.
سپس در نوار بالا در پیشخوان وردپرس، روی پیش بارگیری کش کلیک کنید و چند لحظه منتظر باشید تا مجدد فایل های کش جدید ایجاد شود. برای اطمینان بیشتر از فایل های کش جدید می توانید در پوشه ذکر شده، تاریخ و زمان آنها را مشاهده نمایید.
با این آموزش می توانید مشکل کندی و عدم لود برخی صفحات در افزونه wp rocket را رفع کنید.
https://www.netafraz.com/blog/preload-is-slow-or-some-pages-are-not-preloaded-at-all/