ذخیره تغیرات سایت
وقتتون بخیر
من هر موقع سایتم رو اصلاح می کنم زمان زیادی طول می کشه تاتغییرات به شکل درست در مرورگر های کاربران به نمایش در بیاید. چطور می تونم این مشکل رو حل کنم ؟
6 پاسخ
سلام مجدد، وقتی شما سایتی رو باز می کنید، مرور گر فایل های استاتیک مثل تصاویر یا فایل های CSS و JS رو کش می کنه تا با درخواست های بعدی نیازی به دانلود این فایل ها نباشه، این کار بر اساس آدرس تعیین میشه، حالا شما اگر یک Query String مانند مثال بالا استفاده کنید و عدد مورد نظر رو با تغییرات فایل، تغییر بدید مرورگر مجدد فایل رو دانلود می کنه و تغییرات اعمال میشه.
خیلی ممنون از اینکه جواب دادین فقط یه کم شفاف تر توضیح بدین ممنونتون می شم
سلام، وقت بخیر
مشکل به خاطر Cache شدن فایل های css، تصاویر و فایل های js هست، برای حل این مشکل یک Query String به انتهای آدرس فایلتون اضافه کنید (البته برای عکس ها اینکار رو نکنید):
<link rel="stylesheet" href="/css/styles.css?fix=234"
کافیه با تغییر اون عدد رو تغییر بدید، البته اگر از قابلیت های Bundling و Minification استفاده کنید بر اساس تغییرات نام فایل انتخاب میشه (در ASP.NET منظورم هست)
سلام مجدد، آدرس زیر رو در نظر بگیرید:
https://tosinso.com/css/styles.css
انتهای آدرس اگر یک علامت سوال قرار بگیره و بعد مقادیری به صورت نام و مقدار بیاد بهش query string گفته میشه:
https://tosinso.com/css/styles.css?fixer=123
تو آدرس بالا یک query string که شامل مقدار 123 با نام fixer هست به همراه آدرس اصلی ارسال میشه و البته تاثیری بر روی فایلی که استفاده میشه نداره. حالا شما هر بار که مقدار fixer رو تغییر بدی مثل این هست که یک آدرس جدید رو استفاده می کنی. البته این نکته رو بگم که query string استفادشون فقط تو این شرایط نیست و استفاده های دیگه ای هم دارن.
خیلی ممنون منظورتون رو متوجه شدم فقط چطور نوشتن Query String رو متوجه نشدم
بسیار بسیار سپاس کمک زیادی کردین بهم خیلی ممنون