رفع خطای Remove query strings from static resources در GTmetrix

رفع خطای Remove query strings from static resources در GTmetrix

در این مطلب، قصد داریم، تا نحوه رفع خطا Remove query strings from static resources در سایت GTmetrix را آموزش دهیم. پس همراه ما باشید تا انتهای مطلب.

برای خرید کلاس آنلاین اسکای روم میتوانید در این صفحه اقدام نمایید. 

Remove query strings from static resources چیست؟

احتمالا تا به حال URL و آدرس فایلی را مشاهده کرده اید. که در این آدرس از علامت هایی مثل “&” و “؟” استفاده شده باشد. این آدرس ها و URL هایی که دارای کاراکتری هایی مثل “&” یا “؟” هستند. Query strings نیز در حقیقت URL ها و آدرس هایی هستند. که شما آنها را حاوی کاراکتری هایی مثل “&” یا “؟” می بینید و پارامتری برای ارسال در خواست ها به صورت Query strings هستند.

فایل های CSS و اسکریپت ها معمولا دارای آدرس هایی هستند. که در آخر این آدرس ها از علامت های “&” یا “؟” استفاده شده و مواردی مثل ورژن و … را نمایش می دهند. فایل ها و آدرس هایی که به صورت Query strings می باشند. کش نمی شوند. و می تواند مشکلاتی را در زمینه ذخیره سازی ایجاد کند. همچنین در CDN ها و مرورگر ها نیز می تواند مانع از کش شدن این نوع از محتوا شود.

این موارد باعث می شوند. تا سرعت لود شدن سایت برای کاربران زیاد شده. و همچنین تعداد HTTP Request ها نیز افزایش پیدا کند.

خطای Remove query strings from static resources

البته حذف Query string ها نیز می تواند، خود باعث مشکلات خفیف تری شود. زیرا؛ پس از حذف آنها در صورتی که شما به طور مثال Query string افزونه ای را حذف کنید. ممکن است. پس از آپدیت کردن افزونه مورد نظر، عملکرد افزونه برای کاربران تا مدتی به صورت کش باشد. این مورد می تواند برای تغییرات در فایل های CSS و JS نیز صادق باشد.

برای حل این مشکلات پیشنهاد می کنیم، که Query string منابع ( به خصوص منابع استاتیک ) را حذف کنید. و سپس؛ خود شما آنها را مدیریت کرده. و برای هر آدرس و فایلی بازه زمانی کش مشخص کنید. تا هم مشکل اول از بین برود. و هم هر فایل پس از آپدیت، پس از گذشت مدت زمانی مشخص کش قبل آن از بین برود.

حل ارور Remove query strings from static resources در GTmetrix

Remove query strings from static resources

شما متناسب با سایت خود، که با چه سیستم مدیریت محتوایی راه اندازی شده. و یا با چه زبانی نوشته شده باشد. می توانید Query strings را حذف کنید.

حذف Query string در وردپرس

برای حذف Query string ها معمولا از پلاگین هایی که برای این مورد وجود دارد استفاده می شود. اما راه دیگری نیز وجود دارد. که از طریق اضافه کردن کد به فایل functions.php می باشد.

برای سفارش طراحی سایت به این لینک مراجعه کنید.

می توانید این کد را با Edit فایل functions.php در آن ذخیره کنید.

function _remove_script_version( $src ){
$parts = explode( ‘?’, $src );
return $parts[0];
}
add_filter( ‘script_loader_src’, ‘_remove_script_version’, 15, 1 );
add_filter( ‘style_loader_src’, ‘_remove_script_version’, 15, 1 );

پیشنهاد ما استفاده از افزونه های موجود در این زمینه است. افزونه هایی مثل؛ Remove Query Strings From Static Resources Like CSS & JS Files و Remove Query Strings From Static Resources یا WP Rocket استفاده کنید. برای حذف Query string با افزونه WP Rocket باید، در تنظیمات این پلاگین چک باکس گزینه Remove query strings from static resources  را فعال کنید.

حذف Query string در جوملا

در جوملا برای حذف Query string ها می توانید، از افزونه Joomsef استفاده کنید. همچنین، در قسمت مدیریت جوملا به به قسمت Global Configuration رفته. و به بخش SEO Settings  مراجعه کنید. در این قسمت شما می توانید چک باکس گزینه search engine friendly (SEF) URLs را فعال کنید.

سپس باید کاراکتر های “&” یا “؟” به صورت disallow معرفی کنید. که برای این کار باید فایل robots.txt را Edit کرده. و دستور زیر را در آن قرار دهید. و ذخیره کنید.

User-agent: *
Disallow: /*?*

حذف Query string در php

اگر سایت شما بر اساس زبان php نوشته. و راه اندازی شده است. می توانید، از دستور زیر استفاده کنید.

function remove_querystring_var($url, $key) {
$url = preg_replace(‘/(.*)(?|&)’ . $key . ‘=[^&]+?(&)(.*)/i’, ‘$1$2$4’, $url . ‘&’);
$url = substr($url, 0, -1);
return ($url);
}

در این دستور شما می توانید از متغیر $key را برای حذف کاراکتر URL استفاده کنید.

دیدگاه‌ خود را بنویسید

نشانی ایمیل شما منتشر نخواهد شد.

اسکرول به بالا