تخفیف ویژه 5٪ برای استفاده از درگاه نقدی ایران‌کیش — کد تخفیف: JY9MUZC3 ارسال به سراسر کشور در سریعترین زمان ممکن/ پست، تیپاکس، ارسال با پیک برای فردیس الان بخر، تو 4 قسط پرداخت کن! طرف قرارداد با (ترب‌پی، دیجی‌پی، اسنپ‌پی)
تخفیف ویژه 5٪ برای استفاده از درگاه نقدی ایران‌کیش — کد تخفیف: JY9MUZC3 ارسال به سراسر کشور در سریعترین زمان ممکن/ پست، تیپاکس، ارسال با پیک برای فردیس الان بخر، تو 4 قسط پرداخت کن! طرف قرارداد با (ترب‌پی، دیجی‌پی، اسنپ‌پی)

آموزش رفع مشکل کندی سایت در شرایط اینترنت ملی

بازدید: 110 بازدید
آموزش رفع مشکل کندی سایت

آموزش رفع مشکل کندی سایت در شرایط اینترنت ملی وقتی صحبت از «اینترنت ملی» یا همان قطع دسترسی به شبکه جهانی پیش می‌آید، سایت‌هایی که سرورشان چه در داخل و چه در خارج کشور هستند، با چالشی جدی روبرو می‌شوند: عواملی مثل کندی شدید یا عدم بارگذاری سایت. در این مقاله آموزش افزایش سرعت وردپرس، راهکارهای فنی و عملی برای حفظ سرعت و پایداری سایت در این شرایط را بررسی می‌کنیم.

چرا سرعت سایت در زمان اختلالات اینترنت کاهش می‌یابد؟

مشکل اصلی در این شرایط، ایجاد اختلال در مسیرهای ارتباطی (Gateway) بین گره‌های داخل کشور و سرورهای خارجی است. وقتی کاربر از اینترنت داخلی استفاده می‌کند، درخواست او برای رسیدن به سرور خارج از کشور باید از فیلترهای متعددی عبور کند که باعث افزایش شدید Latency (تأخیر) و Packet Loss می‌شود. البته در شرایط محدودیت شدید، درخواستی از کشور خارج نمی‌شود، یعنی دسترسی به خارج کشور کاملا بسته است و به‌همین خاطر در سایت‌هایی که منابعی را از خارج کشور دریافت می‌کنند با خطا و کندی سرعت مواجه می‌شویم.

این موضوع می‌تواند باعث بروز مشکلاتی مانند: کندی شدید سایت ناقص لود شدن صفحات نمایش ندادن فونت‌ها و آیکون‌ها اختلال در عملکرد فرم‌ها و ثبت‌نام کاربران شود؛ در حالی که بسیاری از مدیران سایت‌ها از دلیل اصلی این مشکلات اطلاعی ندارند.

این موضوع می‌تواند باعث بروز مشکلاتی مانند:

  • کندی شدید سایت
  • ناقص لود شدن صفحات
  • نمایش ندادن فونت‌ها و آیکون‌ها
  • اختلال در عملکرد فرم‌ها و ثبت‌نام کاربران شود؛ در حالی که بسیاری از مدیران سایت‌ها از دلیل اصلی این مشکلات اطلاعی ندارند.

آموزش رفع مشکل کندی سرعت سایت در شرایط اینترنت ملی

در ادامه راه‌ حل های مختلفی را ارائه می‌کنیم که برخی از آن‌ها نیاز دارد که کدهایی را به سایت‌تان اضافه کنید که در ادمه بطور کامل توضیح خواهیم داد.

روش اول: آموزش رفع کندی سرعت وردپرس در افزونه دیجیتس

در زمانی که اینترنت ملی است، مرورگر کاربر دقایق زیادی را صرفِ تلاش برای دریافت فایل و منابع از سرورهای خارجی (مثل unpkg.com) می‌کند و همین باعث می‌شود سایت شما اصلاً باز نشود یا به شدت کند شود. کد زیر با شناسایی آدرس‌های خارجی، اجازه نمی‌دهد سایت منتظر پاسخِ سرورهای خارج از کشور بماند و با حذف این درخواست‌های مزاحم، سرعت لود اولیه سایت را در شرایط محدودیت اینترنت به‌شدت افزایش می‌دهد.

کد زیر را مطابق با مقاله فوق به فایل فانکشن قالب اضافه کنید.

add_filter(‘script_loader_src’, function ($src) {
if (strpos($src, ‘unpkg.com/libphonenumber-js’) !== false) {
return false;
}
return $src;
}, 999);

روش دوم: آموزش رفع کندی سرعت بدلیل لود فایل Font Awesome از Cloudflare

کد زیر هم دقیقاً مثل کد قبلی عمل می‌کند، با این تفاوت که این‌بار سراغ فایل‌های استایل (CSS) می‌رود. این قطعه کد بررسی می‌کند که اگر افزونه‌ای مثل المنتور پرو یا قالبی مثل قالب وودمارت قصد داشت آیکون‌های Font Awesome را از سرورهای خارجیِ کلودفلر بارگذاری کند، جلوی آن را بگیرد. از آنجایی که در زمان اختلال اینترنت، اتصال به سرورهای کلودفلر با تأخیر زیاد مواجه می‌شود یا کاملا مسدود می‌شود، این کد با حذفِ انتظار برای دریافت آیکون‌ها، مانع از «قفل شدن» یا سفید ماندن صفحه سایت شما برای کاربران داخل کشور می‌شود.

این کد را هم مشابه کد فوق به فایل فانکشن قالب اضافه کنید.

روش سوم: آموزش رفع کندی سرعت بخاطر لود فونت های گوگل

با افزودن کد زیر بارگذاری فونت‌های گوگل مسدود می‌شود، این‌کار باعث افزایش سرعت سایت شما شده و مشکل کندی رفع خواهد شد.

add_filter(‘script_loader_src’, function ($src) {
$blocked = [
‘google.com’,
‘gstatic.com’,
‘fonts.googleapis.com’,
‘fonts.gstatic.com’
];
foreach ($blocked as $domain) {
if (strpos($src, $domain) !== false) {
return false;
}
}
return $src;
}, 10, 1);
add_filter(‘style_loader_src’, function ($src) {
if (strpos($src, ‘fonts.googleapis.com’) !== false) {
return false;
}
return $src;
}, 10, 1);

روش چهارم: غیرفعال‌سازی بارگذاری آواتار در سایت

تصاویر پروفایل یا همان آواتارها در سایت از طریق سایت Gravatar بارگذاری می‌‎شوند که یک سایت خارجی است و در شرایط اینترنت ملی باعث کاهش سرعت سایت شما یا عدم بارگذاری آن خواهد شد.

دلایل اصلی برای غیرفعالسازی:

  • افزایش سرعت بارگذاری سایت: هر بار که صفحه‌ای دارای بخش دیدگاه‌ها یا پروفایل کاربری بارگذاری می‌شود، وردپرس باید به سرورهای خارجی Gravatar درخواست ارسال کند. این موضوع سرعت سایت را کاهش می‌دهد.
  • مشکل در ایران: به دلیل تحریم‌ها و محدودیت‌های اینترنت، ارتباط با سرورهای خارجی به‌خصوص Gravatar در ایران کند یا غیرپایدار است. این یعنی هر بار که کاربران وارد صفحه‌ای با آواتار شوند، ممکن است بارگذاری طولانی شود.

روش‌های غیرفعالسازی تصاویر پروفایل در وردپرس

برای غیرفعال‌سازی تصاویر پروفایل در پنل مدیریت سایت به قسمت تنظیمات » گفت‌و‌گو بروید. سپس در همین صفحه تیک گزینه نمایش نیم‌رخ را بردارید.

روش پنجم: غیرفعال‌سازی یا حذف کد گوگل آنالیتیکس

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

هم‌چنین می‌توانید از سرویس‎‌های ایرانی در این زمینه برای آنالیز بازدید و… در سایت خود استفاده کنید.

 

روش ششم: غیرفغال سازی رکوئست های خارجی (درخواست های  HTTP API CALLS)

برای از بین بردن درخواست های خارجی 2 روش روجود دارد اول اینکه تمامی درخواست ها را با گذاشتن یک قطعه کد در فایل wp-config.php مسدود کنید.

روش اول:کد زیر را در فایل کانفیگ خود قرار دهید:

define( ‘WP_HTTP_BLOCK_EXTERNAL’, TRUE );
define( ‘WP_ACCESSIBLE_HOSTS’, ‘wordpress.org’ );

البته در نظر داشته باشید که این کد اسنپ پی شما را غیر فعال میکند.

روش دوم:کد PHP زیر را در افزونه اسنیپت قرار دهید: توجه داشته باشید در این حالت تمامی درخواست ها مسدود نمیشوند و فقط مواردیکه بصورت قرمز در کد زیر گذاشته شده اند مسدود میشوند شما میتوانید درخواست های سرورهای خارجی سایت خود را در آن قسمت اضافه نمایید.

/** Block outgoing HTTP requests to specific domains. **/

 function my_custom_block_external_requests( $pre, $args, $url ) {

    // لیستی از دامنه‌هایی که می‌خواهید مسدود شوند

    // می‌توانید از wildcard (*) هم استفاده کنید.

    $blocked_hosts = [

    // WordPress Core / Updates

    ‘api.wordpress.org’,

    ‘downloads.wordpress.org’,

‘translate.wordpress.com’,

    ‘*.wordpress.org’,

// مسدود کردن تمام زیردامنه‌ها

    ];

    // استخراج هاست (دامنه) از URL درخواستی

    $requested_host = parse_url( $url, PHP_URL_HOST );

    // اگر نتوانستیم هاست را پیدا کنیم، اجازه عبور می‌دهیم

    if ( ! $requested_host ) {

        return $pre; // یا return false

    }

    // بررسی اینکه آیا هاست درخواستی در لیست مسدودی ما قرار دارد یا خیر

    foreach ( $blocked_hosts as $blocked_host ) {

        // با استفاده از fnmatch از wildcard (*) پشتیبانی می‌کنیم

        if ( fnmatch( $blocked_host, $requested_host ) ) {

            // اگر دامنه در لیست سیاه بود، درخواست را با یک خطا مسدود کن

            return new WP_Error( ‘http_request_blocked’, ‘دسترسی به دامنه ‘ . esc_html( $requested_host ) . ‘ مسدود شده است.’ );

        }

    }

    // اگر دامنه در لیست سیاه نبود، اجازه بده درخواست ادامه پیدا کند

    return $pre; // یا return false

}

add_filter( ‘pre_http_request’, ‘my_custom_block_external_requests’, 10, 3 );

*توجه* شما میتوانید تمامی کدهای گفته شده به جز روش چهارم که بصورت سیستمی انجام میشود را یکجا داخل یک کد PHP در افزونه Cod Snipet قرار دهید در این صورت نیازی به گذاشتن کدها در فایل فانکشن و یا کانفیگ هم ندارید جهت دانلود افزونه میتونید به مخزن وردپرس مراجعه کنید.

امیدواریم که این سری از مقالات آموزش وردپرس مورد توجه و پسند شما قرار گرفته باشد. در صورتی که در رابطه با این مقاله و افزایش سرعت سایت در شرایط بحرانی در وردپرس سوال یا مشکلی داشتید در بخش دیدگاه‌ها اعلام کنید تا در کوتاه‌ترین زمان ممکن پاسخگوی شما باشیم. 

ما را در اینستگرام دنبال کنید تا از تخفیفات و جشنواره ها زودتر از بقیه با خبر بشید!

دسته‌بندی آموزشی بلاگ وردپرس
اشتراک گذاری

2 دیدگاه در “آموزش رفع مشکل کندی سایت در شرایط اینترنت ملی”

    1. خواهش می کنیم 🙏 امیدواریم که این آموزش بتونه برای همه مفید باشه و تو این شرایط اینترنت کمک کنه🌷

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

سبد خرید

سبد خرید شما خالی است.

ورود به سایت
رهگیری سفارش
سوالات خود را از ما بپرسید! سوالات خود را از ما بپرسید!