Cache Busting چیست و چطور مشکل فایلهای قدیمی مرورگر را حل میکند؟
گاهی نسخه جدید سایت منتشر میشه، اما مرورگر هنوز فایلهای قدیمی رو نشان میده. Cache Busting با تغییر آدرس فایلهای CSS و JavaScript این مشکل رو حل میکنه.
تهیهشده با کمک هوش مصنوعی از منابع ذکرشده

فهرست مطالب۵ بخش
وقتی توسعهدهنده نسخه تازهای از کدهای CSS یا JavaScript را منتشر میکند، ممکن است بعضی از کاربران همچنان نسخه قبلی فایلها را از کش مرورگر دریافت کنند. Cache Busting روشی برای حل همین مشکل است تا تغییرات جدید با تغییر آدرس فایل به مرورگر برسد.
#نکات کلیدی
- کش مرورگر ممکن است مانع نمایش فوری نسخه جدید فایلهای CSS و JavaScript شود.
- در Cache Busting میتوان یک پارامتر نسخه به آدرس فایل اضافه کرد.
- با تغییر این پارامتر، مرورگر فایل را دوباره دریافت میکند.
- Vite و Webpack میتوانند از روش Content Hashing استفاده کنند.
- فایلهایی که تغییر نکردهاند، همچنان از کش مرورگر بارگذاری میشوند.
#تغییر پارامتر نسخه در آدرس فایل
یکی از روشهای ساده Cache Busting، اضافهکردن یک پارامتر به آدرس فایل است. برای نمونه، آدرس یک فایل JavaScript میتواند به شکل زیر نوشته شود:
<script src="app.js?v=2"></script>
با انتشار نسخه جدید، توسعهدهنده مقدار این پارامتر را تغییر میدهد. از آنجا که آدرس فایل دیگر با نسخه قبلی یکسان نیست، مرورگر آن را بهعنوان یک منبع تازه در نظر میگیرد و دوباره دریافتش میکند.
#Content Hashing چطور کار میکند؟
ابزارهای Build مانند Vite و Webpack از روش دیگری به نام Content Hashing استفاده میکنند. در این روش، یک هش بر اساس محتوای فایل ساخته و به نام آن اضافه میشود؛ برای مثال، app.js میتواند به app.a82f91.js تبدیل شود.
اگر محتوای فایل تغییر کند، هش آن هم عوض میشود و فایل تازه نام متفاوتی خواهد داشت. این تغییر نام، URL جدیدی میسازد و باعث میشود مرورگر نسخه تازه را دریافت کند.
#چه اتفاقی برای فایلهای بدون تغییر میافتد؟
مزیت Content Hashing این است که فقط فایلهای تغییریافته نام جدید میگیرند. فایلهایی که محتوایشان ثابت مانده، همان هش و نام قبلی را حفظ میکنند و مرورگر میتواند آنها را همچنان از کش بخواند.
به این ترتیب، توسعهدهنده نسخه جدید فایلهای تغییرکرده را به کاربر میرساند، بدون اینکه استفاده از کش برای همه فایلهای ثابت کنار گذاشته شود. برای شما بهعنوان توسعهدهنده، تفاوت اصلی دو روش در این است که پارامتر نسخه باید هنگام انتشار تغییر کند، اما در Content Hashing نام فایل از محتوای همان فایل اثر میگیرد.
#جمعبندی
Cache Busting کمک میکند کاربران بعد از انتشار نسخه جدید، درگیر فایلهای قدیمی CSS و JavaScript نشوند. تغییر پارامتر URL راهی ساده است و Content Hashing نیز فایلهای تغییرکرده را از فایلهای ثابت جدا میکند تا کش مرورگر همچنان قابل استفاده بماند.
مطالب مرتبط
برای ادامه مطالعه
این یادداشتها بر اساس موضوع مشترک، همپوشانی برچسبها و تازگی انتشار انتخاب میشوند.
تازهLinux 7.4 با ۱۹٬۶۷۱ کامیت رکورد پنجره ادغام را شکست
پنجره ادغام Linux 7.4 با نزدیک به ۲۰ هزار کامیت رکورد زده. استفاده بیشتر از ابزارهای هوش مصنوعی یکی از دلایل احتمالی این رشد عنوان شده، اما بازبینی انسانی همچنان بخش اصلی کار است.


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