আমার পৃষ্ঠায় আমি কিছু কোড রাখার উপায় আছে যাতে কেউ যখন কোনও সাইট পরিদর্শন করেন তখন এটি ব্রাউজারের ক্যাশে সাফ করে, যাতে তারা পরিবর্তনগুলি দেখতে পারে?
ব্যবহৃত ভাষা: এএসপি.এনইটি, ভিবি.এনইটি এবং অবশ্যই এইচটিএমএল, সিএসএস এবং jQuery।
আমার পৃষ্ঠায় আমি কিছু কোড রাখার উপায় আছে যাতে কেউ যখন কোনও সাইট পরিদর্শন করেন তখন এটি ব্রাউজারের ক্যাশে সাফ করে, যাতে তারা পরিবর্তনগুলি দেখতে পারে?
ব্যবহৃত ভাষা: এএসপি.এনইটি, ভিবি.এনইটি এবং অবশ্যই এইচটিএমএল, সিএসএস এবং jQuery।
উত্তর:
যদি এটি সম্পর্কিত .css
এবং .js
পরিবর্তিত হয় তবে একটি উপায় হ'ল "ক্যাশে বুস্টিং" হ'ল _versionNo
প্রতিটি প্রকাশের জন্য ফাইলের নামের " " মতো কিছু যুক্ত করা । উদাহরণ স্বরূপ:
script_1.0.css // This is the URL for release 1.0
script_1.1.css // This is the URL for release 1.1
script_1.2.css // etc.
অথবা বিকল্পভাবে ফাইল নামের পরে এটি করুন:
script.css?v=1.0 // This is the URL for release 1.0
script.css?v=1.1 // This is the URL for release 1.1
script.css?v=1.2 // etc.
এটি কীভাবে কাজ করতে পারে তা দেখতে আপনি এই লিঙ্কটি পরীক্ষা করে দেখতে পারেন।
script.js?v=1.2
। (বা আপনি যদি সংস্করণগুলি ট্র্যাক না করে থাকেন তবে কেবল ফাইলটি সর্বশেষ-সংশোধিত সময় ব্যবহার করুন যা করা আরও সহজ)। নিশ্চিত না যে এটি পূর্ববর্তী মন্তব্যকারী বলতে কী বোঝায়!
<link />
এবং কোয়েরি স্ট্রিং প্যারামিটার হিসাবে অ্যাপ্লিকেশনটির সংস্করণটি ইনজেক্ট করতে পারেন। বিকল্পভাবে, কিছু সিএমএসের একটি সিএমএস-প্রশস্ত সেটিংস হিসাবে একটি "ক্লায়েন্ট রিসোর্স সংস্করণ" থাকবে যা সংযুক্ত করা হয়েছে - সাইটের প্রশাসক ম্যানুয়ালি সেই সংস্করণটি এনআরটি বাড়িয়ে তুলতে পারবেন এবং সিএমএসের আপডেটগুলিও স্বয়ংক্রিয়ভাবে এটি আপডেট হতে পারে। নীচের লাইন: আপনার ফাইল URL গুলি গতিশীলভাবে রেন্ডার করতে হবে।
দেখব ক্যাশে-নিয়ন্ত্রণ এবং মেয়াদ শেষ মেটা ট্যাগ।
<META HTTP-EQUIV="CACHE-CONTROL" CONTENT="NO-CACHE">
<META HTTP-EQUIV="EXPIRES" CONTENT="Mon, 22 Jul 2002 11:12:01 GMT">
অন্য একটি সাধারণ অভ্যাস হ'ল অনুরোধ করা ফাইলগুলির শেষে ক্রমাগত পরিবর্তনশীল স্ট্রিং যুক্ত করা। এই ক্ষেত্রে:
<script type="text/javascript" src="main.js?v=12392823"></script>
এটি একটি পুরানো প্রশ্ন তবে আমি মনে করি এটির একটি আরও উত্তরোত্তর উত্তর প্রয়োজন কারণ এখন ওয়েবসাইটের ক্যাচিংয়ের আরও নিয়ন্ত্রণের উপায় রয়েছে।
ইন অফলাইন ওয়েব অ্যাপ্লিকেশন (যা সত্যিই কোন HTML5 এর ওয়েবসাইট) applicationCache.swapCache()
ম্যানুয়ালি পৃষ্ঠাটি পুনরায় লোড প্রয়োজন ছাড়াই আপনার ওয়েবসাইটের ক্যাশেড সংস্করণটি আপডেট করার জন্য ব্যবহার করা যাবে।
এটি HTML5 রকস- এ অ্যাপ্লিকেশন ক্যাশে ব্যবহার করার জন্য শিক্ষানবিশদের গাইড থেকে আপনার সাইটের নতুন সংস্করণে কীভাবে ব্যবহারকারীদের আপডেট করবেন তা ব্যাখ্যা করার একটি কোড উদাহরণ :
// Check if a new cache is available on page load.
window.addEventListener('load', function(e) {
window.applicationCache.addEventListener('updateready', function(e) {
if (window.applicationCache.status == window.applicationCache.UPDATEREADY) {
// Browser downloaded a new app cache.
// Swap it in and reload the page to get the new hotness.
window.applicationCache.swapCache();
if (confirm('A new version of this site is available. Load it?')) {
window.location.reload();
}
} else {
// Manifest didn't changed. Nothing new to server.
}
}, false);
}, false);
আরও তথ্যের জন্য মোজিলা বিকাশকারী নেটওয়ার্কের অ্যাপ্লিকেশন ক্যাশে ব্যবহার করে দেখুন ।
বিষয়গুলি ওয়েবে দ্রুত পরিবর্তন হয়। এই প্রশ্নটি 2009 সালে জিজ্ঞাসা করা হয়েছিল এবং 2012 সালে আমি প্রশ্নটিতে বর্ণিত সমস্যাটি পরিচালনা করার জন্য একটি নতুন উপায় সম্পর্কে একটি আপডেট পোস্ট করেছি। আরও 4 বছর কেটে গেছে এবং এখন মনে হচ্ছে এটি ইতিমধ্যে অবচয় হয়ে গেছে। মন্তব্যে এটিকে নির্দেশ করার জন্য চাগলদিওলোকে ধন্যবাদ ।
বর্তমানে, জুলাই ২০১ 2016 পর্যন্ত, এইচটিএমএল স্ট্যান্ডার্ড, বিভাগ Section.৯, অফলাইন ওয়েব অ্যাপ্লিকেশনগুলিতে একটি অবচয় সতর্কতা অন্তর্ভুক্ত রয়েছে:
এই বৈশিষ্ট্যটি ওয়েব প্ল্যাটফর্ম থেকে সরানোর প্রক্রিয়াধীন রয়েছে। (এটি একটি দীর্ঘ প্রক্রিয়া যা অনেক বছর সময় নেয়)) এই সময়ে অফলাইন ওয়েব অ্যাপ্লিকেশন বৈশিষ্ট্যগুলির মধ্যে যে কোনওটি ব্যবহার করা অত্যন্ত নিরুৎসাহিত। পরিবর্তে পরিষেবা কর্মীদের ব্যবহার করুন।
সুতরাং করে অ্যাপ্লিকেশন ক্যাশে ব্যবহার মোজিলা ডেভেলপার নেটওয়ার্কে যে আমি 2012 সালে রেফারেন্সড:
অবচয়
এই বৈশিষ্ট্যটি ওয়েব মান থেকে সরানো হয়েছে। যদিও কিছু ব্রাউজার এখনও এটি সমর্থন করতে পারে তবে এটি বাদ দেওয়ার প্রক্রিয়াধীন। পুরানো বা নতুন প্রকল্পে এটি ব্যবহার করবেন না। এটি ব্যবহার করে পৃষ্ঠা বা ওয়েব অ্যাপ্লিকেশনগুলি যে কোনও সময় ভেঙে যেতে পারে।
যেমন না। একটি পদ্ধতি হ'ল ব্রাউজারটিকে পুনরায় লোড করতে বাধ্য করার জন্য সামগ্রী সরবরাহ করার সময় উপযুক্ত হেডারগুলি প্রেরণ করা হয়:
সমস্ত ব্রাউজার জুড়ে কোনও ওয়েব পৃষ্ঠা ক্যাশেড নয় তা নিশ্চিত করা।
আপনার অনুসন্ধান "cache header"
বা এসও-তে এখানে অনুরূপ কিছু থাকলে, আপনি এএসপি.এনইটি নির্দিষ্ট উদাহরণগুলি খুঁজে পাবেন।
আরেকটি, কম পরিচ্ছন্ন তবে কখনও কখনও কেবলমাত্র যদি আপনি সার্ভারের পাশের শিরোনামগুলি নিয়ন্ত্রণ করতে না পারেন তবে রিসোর্সে একটি র্যান্ডম জিইটি প্যারামিটার যুক্ত করা হচ্ছে যা বলা হচ্ছে:
myimage.gif?random=1923849839
জন্য স্ট্যাটিক সম্পদ অধিকার ক্যাশে হবে ক্যোয়ারী প্যারামিটার ব্যবহার প্রতিটি স্থাপনার বা ফাইল সংস্করণের মান। এটি প্রতিটি স্থাপনার পরে ক্যাশে সাফ করার প্রভাব ফেলবে।
/Content/css/Site.css?version={FileVersionNumber}
এখানে এএসপি.নেট এমভিসি উদাহরণ।
<link href="@Url.Content("~/Content/Css/Reset.css")?version=@this.GetType().Assembly.GetName().Version" rel="stylesheet" type="text/css" />
সমাবেশ ভার্সন আপডেট করতে ভুলবেন না
?version=@ViewContext.Controller.GetType().Assembly.GetName().Version
আমার একযোগে সমস্যা ছিল এবং এটিই আমি এটি সমাধান করেছি:
ইন index.html
ফাইল আমি স্পষ্ট জুড়েছেন:
<html manifest="cache.manifest">
ইন <head>
অধ্যায় স্ক্রিপ্ট ক্যাশে আপডেট অন্তর্ভূক্ত করেছেন:
<script type="text/javascript" src="update_cache.js"></script>
ইন <body>
অধ্যায় আমি ফাংশন লোড থাকলে সন্নিবেশিত করেছি:
<body onload="checkForUpdate()">
ইন cache.manifest
আমি সব ফাইল রেখেছি আমি ক্যাশে করতে চান। এটি এখন গুরুত্বপূর্ণ যে এটি প্রতিবার "সংস্করণ" মন্তব্য আপডেট করে কেবলমাত্র আমার ক্ষেত্রে (অ্যাপাচি) কাজ করে। "? Ver = 001" বা নামের শেষে কোনও কিছুর সাথে ফাইলগুলির নামকরণও এটি একটি বিকল্প তবে এটির প্রয়োজন নেই । পরিবর্তন কেবল # version 1.01
ক্যাশে আপডেট ইভেন্ট ট্রিগার করে।
CACHE MANIFEST
# version 1.01
style.css
imgs/logo.png
#all other files
1., 2. এবং 3 পয়েন্ট কেবল সূচিপত্রের মধ্যে অন্তর্ভুক্ত করা গুরুত্বপূর্ণ t অন্যভাবে
GET http://foo.bar/resource.ext net::ERR_FAILED
সংঘটিত হয় কারণ পৃষ্ঠাটি ইতিমধ্যে ক্যাশে থাকা অবস্থায় প্রতিটি "শিশু" ফাইল পৃষ্ঠাটি ক্যাশে করার চেষ্টা করে।
ইন update_cache.js
ফাইল আমি এই কোড রেখেছি:
function checkForUpdate()
{
if (window.applicationCache != undefined && window.applicationCache != null)
{
window.applicationCache.addEventListener('updateready', updateApplication);
}
}
function updateApplication(event)
{
if (window.applicationCache.status != 4) return;
window.applicationCache.removeEventListener('updateready', updateApplication);
window.applicationCache.swapCache();
window.location.reload();
}
এখন আপনি কেবল ফাইলগুলি পরিবর্তন করেছেন এবং ম্যানিফেস্টে আপনাকে সংস্করণ মন্তব্য আপডেট করতে হবে। এখন index.html পৃষ্ঠাটি পরিদর্শন করা ক্যাশে আপডেট করবে।
সমাধানের অংশগুলি আমার নয় তবে আমি সেগুলি ইন্টারনেটের মাধ্যমে খুঁজে পেয়েছি এবং একসাথে রেখেছি যাতে এটি কার্যকর হয়।
আমার একটি কেস ছিল যেখানে আমি অনলাইনে ক্লায়েন্টদের ফটোগুলি তুলব এবং কোনও ফটো পরিবর্তন করা থাকলে ডিভ আপডেট করতে হবে। ব্রাউজারটি এখনও পুরানো ছবিটি দেখাচ্ছে showing তাই আমি এলোমেলো জিইটি ভেরিয়েবল কল করার হ্যাক ব্যবহার করেছি, যা প্রতিবারই অনন্য হয়ে উঠবে। এটি যদি কারও সাহায্য করতে পারে তবে এখানে
<img src="/photos/userid_73.jpg?random=<?php echo rand() ?>" ...
সম্পাদনা করুন অন্যদের দ্বারা নির্দেশিত অনুসারে, নিম্নলিখিতটি আরও কার্যকর সমাধান হ'ল যেহেতু এটি চিত্র পরিবর্তন করা হলেই ফাইলগুলি পুনরায় লোড করবে, ফাইলের আকার দ্বারা এই পরিবর্তনটি সনাক্ত করে:
<img src="/photos/userid_73.jpg?modified=<? filemtime("/photos/userid_73.jpg")?>"
প্রচুর উত্তর পয়েন্টটি অনুপস্থিত - বেশিরভাগ বিকাশকারী ভাল জানেন যে ক্যাশে বন্ধ করা অযোগ্য। তবে, অনেকগুলি সাধারণ পরিস্থিতি রয়েছে যেখানে দক্ষতা গুরুত্বহীন এবং ডিফল্ট ক্যাশে আচরণটি খারাপভাবে ভেঙে যায়।
এর মধ্যে নেস্টেড, পুনরাবৃত্ত স্ক্রিপ্ট টেস্টিং (বড়টি!) এবং ভাঙ্গা তৃতীয় পক্ষের সফ্টওয়্যার ওয়ার্কআউন্ডস অন্তর্ভুক্ত রয়েছে। এখানে প্রদত্ত সমাধানগুলির মধ্যে কোনওরকমই সাধারণ পরিস্থিতিগুলিকে সমাধান করার জন্য পর্যাপ্ত নয়। বেশিরভাগ ওয়েব ব্রাউজারগুলি খুব আক্রমণাত্মক ক্যাশে হয় এবং এই সমস্যাগুলি এড়াতে কোনও বুদ্ধিমান উপায় সরবরাহ করে না।
<meta http-equiv="pragma" content="no-cache" />
এছাড়াও /programming/126772/how-to-for-a-web-browser-not-to-cache-images দেখুন
নিম্নলিখিতটি ইউআরএল আপডেট করা আমার পক্ষে কাজ করে:
/custom.js?id=1
?id=
নতুন পরিবর্তনের জন্য একটি অনন্য নম্বর যুক্ত করার পরে এবং এটি বাড়ানোর মাধ্যমে, ব্যবহারকারীদের CTRL + F5
ক্যাশে রিফ্রেশ করার জন্য চাপতে হবে না । বিকল্পভাবে, আপনি হ্যাশ বা বর্তমান সময়ের স্ট্রিং সংস্করণ যুক্ত করতে পারেন বা এরপরে ইপোক করতে পারেন?id=
কিছুটা এইরকম ?id=1520606295
এএসপি.এনইটি-তে ক্যাশিং সেট করার বিষয়ে এমডিএসএন পৃষ্ঠাটি এখানে রয়েছে।
Response.Cache.SetExpires(DateTime.Now.AddSeconds(60))
Response.Cache.SetCacheability(HttpCacheability.Public)
Response.Cache.SetValidUntilExpires(False)
Response.Cache.VaryByParams("Category") = True
If Response.Cache.VaryByParams("Category") Then
'...
End If
নিশ্চিত না যে এটি সত্যই আপনাকে সহায়তা করতে পারে তবে কোনও ব্রাউজারে ক্যাশিংয়ের কাজ করা উচিত। ব্রাউজার যখন কোনও ফাইলের জন্য অনুরোধ করে তখন "অফলাইনে" মোড না থাকলে সার্ভারের কাছে সর্বদা একটি অনুরোধ প্রেরণ করা উচিত। সার্ভারটি কিছু পরামিতি পড়বে যেমন তারিখ সংশোধিত বা এট্যাগগুলি।
রূপান্তরিত না হওয়ার জন্য সার্ভারটি 304 ত্রুটির প্রতিক্রিয়া ফিরিয়ে দেবে এবং ব্রাউজারটি তার ক্যাশে ব্যবহার করতে হবে। যদি ইটাগ সার্ভারের পক্ষে বৈধতা না দেয় বা পরিবর্তিত তারিখটি বর্তমান পরিবর্তিত তারিখের নীচে থাকে তবে সার্ভারের নতুন পরিবর্তিত তারিখ বা ইটাগ বা উভয়ই নতুন সামগ্রীটি ফিরিয়ে দেওয়া উচিত।
যদি ব্রাউজারে কোনও ক্যাশিং ডেটা প্রেরণ করা না থাকে, তবে অনুমান করি আচরণটি নির্ধারিত হয়, ব্রাউজারটি ফাইল ক্যাশে বা নাও পারে যা তারা কীভাবে ক্যাশে হয় তা জানায় না। প্রতিক্রিয়াতে আপনি যদি ক্যাচিং প্যারামিটার সেট করেন তবে এটি আপনার ফাইলগুলিকে সঠিকভাবে ক্যাশে করবে এবং সার্ভারটি পরে 304 ত্রুটি বা নতুন সামগ্রী ফিরে আসতে পারে।
এই কাজ করা উচিত কিভাবে হয়। ইউআরএলগুলিতে এলোমেলো প্যারাম বা সংস্করণ নম্বর ব্যবহার করা যে কোনও কিছুর চেয়ে হ্যাকের মতো।
http://www.checkupdown.com/status/E304.html http://en.wikedia.org/wiki/HTTP_ETag http://www.xpertdeveloper.com/2011/03/last-modified-header-vs- মেয়াদ শেষ-হেডার-বনাম-etag /
পড়ার পরে আমি দেখলাম একটি মেয়াদোত্তীর্ণের তারিখও রয়েছে। আপনার যদি সমস্যা হয় তবে এটি হতে পারে যে আপনার একটি মেয়াদ শেষ হয়ে যাবে। অন্য কথায়, যখন ব্রাউজারটি আপনার ফাইলটিকে ক্যাশে করবে, যেহেতু এটির একটি মেয়াদ শেষ হওয়ার তারিখ রয়েছে, সেই তারিখের আগে এটি পুনরায় অনুরোধ করা উচিত নয়। অন্য কথায়, এটি সার্ভারের কাছে ফাইলটি কখনই জিজ্ঞাসা করবে না এবং কোনও 304 সংশোধিত নয়। মেয়াদ শেষ হওয়ার তারিখ না পৌঁছানো বা ক্যাশে সাফ হওয়া পর্যন্ত এটি কেবল ক্যাশে ব্যবহার করবে।
সুতরাং এটি আমার অনুমান, আপনার কোনও মেয়াদ শেষ হওয়ার তারিখ রয়েছে এবং আপনার সর্বশেষ-সংশোধিত ইটাগ বা এটির একটি মিশ্রণ ব্যবহার করা উচিত এবং নিশ্চিত হওয়া উচিত যে কোনও মেয়াদ শেষ হওয়ার তারিখ নেই।
লোকেরা যদি প্রচুর রিফ্রেশ করতে থাকে এবং ফাইলটি খুব বেশি পরিবর্তন না ঘটে তবে একটি বড় মেয়াদ শেষ হওয়ার তারিখ নির্ধারণ করা বুদ্ধিমানের কাজ হতে পারে।
আমার 2 সেন্ট!
আমি এই সহজ সমাধানটি কার্যকর করেছিলাম যা আমার পক্ষে কাজ করে (এখনও উত্পাদন পরিবেশে নয়):
function verificarNovaVersio() {
var sVersio = localStorage['gcf_versio'+ location.pathname] || 'v00.0.0000';
$.ajax({
url: "./versio.txt"
, dataType: 'text'
, cache: false
, contentType: false
, processData: false
, type: 'post'
}).done(function(sVersioFitxer) {
console.log('Versió App: '+ sVersioFitxer +', Versió Caché: '+ sVersio);
if (sVersio < (sVersioFitxer || 'v00.0.0000')) {
localStorage['gcf_versio'+ location.pathname] = sVersioFitxer;
location.reload(true);
}
});
}
এইচটিএমএল যেখানে রয়েছে সেখানে আমি একটি ছোট্ট ফাইল রেখেছি:
"Versio.txt":
v00.5.0014
এই ফাংশনটি আমার সমস্ত পৃষ্ঠায় ডাকা হয়, সুতরাং এটি লোড করার সময় লোকালস্টোরের সংস্করণটির মানটি বর্তমান সংস্করণের তুলনায় কম এবং কোনওটি করে কিনা তা পরীক্ষা করে
location.reload(true);
... ক্যাশে পরিবর্তে সার্ভার থেকে পুনরায় লোড করার জন্য।
(স্পষ্টতই, লোকাল স্টোরেজের পরিবর্তে আপনি কুকিজ বা অন্যান্য ক্রমাগত ক্লায়েন্ট স্টোরেজ ব্যবহার করতে পারেন)
আমি এই সমাধানটির সরলতার জন্য বেছে নিয়েছি, কারণ কেবলমাত্র একটি ভার্সন ফাইল "ভার্সিও টেক্সট" পুরোপুরি পুনরায় লোড করতে বাধ্য করবে।
ক্যোরিস্ট্রিং পদ্ধতিটি প্রয়োগ করা শক্ত এবং এটিও ক্যাশে করা হয়েছে (যদি আপনি ভি 1.1 থেকে কোনও পূর্ববর্তী সংস্করণে পরিবর্তন করেন তবে ক্যাশে থেকে লোড হবে, তার মানে এর অর্থ হ'ল আগের সমস্ত সংস্করণ ক্যাশে রেখে ক্যাশে ফ্লাশ করা হয়নি)।
আমি একটু নবাগত এবং আমার পদ্ধতিটি একটি ভাল পদ্ধতির বিষয়টি নিশ্চিত করার জন্য আমি আপনার পেশাদার চেক এবং পর্যালোচনাটির প্রশংসা করব।
আশা করি এটা সাহায্য করবে.
ক্যাশে-নিয়ন্ত্রণ: নো-ক্যাশে সেট করা ছাড়াও, যদি আপনি প্রতিবার লোকাল কপি রিফ্রেশ করতে চান (আই-র কিছু সংস্করণ এটির প্রয়োজন বলে মনে হয়) আপনারও এক্সপায়ার শিরোনাম -1 এ সেট করা উচিত।
এইচটিটিপি ক্যাশে দেখুন - সার্ভারের সাথে চেক করুন, সর্বদা যদি-সংশোধিত-প্রেরণ করা হয়
একটি কৌশল আছে যা ব্যবহার করা যেতে পারে trick কৌশলটি হ'ল স্ক্রিপ্ট ট্যাগের ফাইলের নামের সাথে একটি পরামিতি / স্ট্রিং যুক্ত করা এবং আপনি পরিবর্তনগুলি ফাইল করার সময় এটি পরিবর্তন করা।
<script src="myfile.js?version=1.0.0"></script>
ব্রাউজারটি পুরো স্ট্রিংটিকে ফাইল পথ হিসাবে ব্যাখ্যা করে যদিও "এর পরে কী আসে?" পরামিতি হয়। তাই এখন ঘটছে যখন আপনি নিজের ফাইল আপডেট করবেন তখন আপনার ওয়েবসাইটের স্ক্রিপ্ট ট্যাগের নম্বরটি পরিবর্তন করুন (উদাহরণ <script src="myfile.js?version=1.0.1"></script>
) এবং প্রতিটি ব্যবহারকারী ব্রাউজার দেখতে পাবেন যে ফাইলটি পরিবর্তিত হয়েছে এবং একটি নতুন অনুলিপি দখল করেছে।
ব্রাউজারগুলিকে ক্যাশে সাফ করতে বাধ্য করুন বা সঠিক ডেটা পুনরায় লোড করুন? স্ট্যাকওভারফ্লোতে বর্ণিত বেশিরভাগ সমাধান চেষ্টা করেছি, কিছু কাজ, তবে কিছুক্ষণ পরে, এটি শেষ পর্যন্ত ক্যাশে করে এবং পূর্ববর্তী লোড হওয়া স্ক্রিপ্ট বা ফাইলটি প্রদর্শন করে। এর অন্য কোনও উপায় আছে যা ক্যাশে (সিএসএস, জেএস, ইত্যাদি) সাফ করবে এবং সমস্ত ব্রাউজারে আসলে কাজ করবে?
আমি এখনও অবধি খুঁজে পেয়েছি যে আপনি যদি সার্ভারে আপনার ফাইলে তারিখ এবং সময় পরিবর্তন করেন তবে নির্দিষ্ট সংস্থান পৃথকভাবে পুনরায় লোড করা যায়। "ক্যাশে ক্লিয়ারিং" যতটা সহজ হওয়া উচিত তত সহজ নয়। আমার ব্রাউজারগুলিতে ক্যাশে সাফ করার পরিবর্তে, আমি বুঝতে পেরেছি যে "স্পর্শ" করা সার্ভার ফাইলগুলি ক্যাশে করা প্রকৃতপক্ষে সার্ভারে ক্যাশেড সোর্স ফাইলের তারিখ এবং সময় পরিবর্তন করবে (এজড, ক্রোম এবং ফায়ারফক্সে পরীক্ষিত) এবং বেশিরভাগ ব্রাউজার স্বয়ংক্রিয়ভাবে সর্বাধিক ডাউনলোড করবে আপনার সার্ভারে কী আছে তার বর্তমান তাজা অনুলিপি (কোড, গ্রাফিক্স কোনও মাল্টিমিডিয়াও)। আমি আপনাকে সার্ভারের সর্বাধিক বর্তমান স্ক্রিপ্টগুলি অনুলিপি করার পরামর্শ দিচ্ছি এবং আপনার প্রোগ্রামটি চালানোর আগে " ডায়া টাচ জিনিস" সমাধানটি সমাধান করুন, সুতরাং এটি আপনার সমস্ত সমস্যার ফাইলগুলির তারিখকে সর্বাধিক বর্তমান তারিখ এবং সময় পরিবর্তন করবে, তারপরে এটি একটি নতুন কপি ডাউনলোড করবে আপনার ব্রাউজারে:
<?php
touch('/www/sample/file1.css');
touch('/www/sample/file2.js');
?>
তারপরে ... আপনার বাকি প্রোগ্রাম ...
এই সমস্যাটি সমাধান করতে আমার কিছুটা সময় লেগেছে (যতগুলি ব্রাউজার বিভিন্ন কমান্ডের সাথে আলাদাভাবে কাজ করে তবে তারা সমস্ত ফাইলের সময় পরীক্ষা করে এবং আপনার ব্রাউজারে ডাউনলোড করা অনুলিপিটির সাথে তুলনা করে, যদি আলাদা তারিখ এবং সময় থাকে তবে তা রিফ্রেশ করবে), আপনি যদি অনুমিত সঠিক পথে যেতে পারে না, এর জন্য আরও একটি ব্যবহারযোগ্য এবং আরও ভাল সমাধান সর্বদা রয়েছে। শুভেচ্ছা এবং শুভ শিবির। উপায় দ্বারা স্পর্শ (); বা বিকল্পগুলি জাভাস্ক্রিপ্ট বাশ sh পিএইচপি সহ অন্তর্ভুক্ত অনেক প্রোগ্রামিং ভাষায় কাজ করে এবং আপনি এইচটিএমএলে তাদের অন্তর্ভুক্ত বা কল করতে পারেন।
আপনি কি ক্যাশেটি সাফ করতে চান, বা কেবল আপনার বর্তমান (পরিবর্তিত?) পৃষ্ঠা ক্যাশে না হয়েছে তা নিশ্চিত করে নিন?
যদি দ্বিতীয়টি হয় তবে এটি হিসাবে সহজ হওয়া উচিত
<META HTTP-EQUIV="Pragma" CONTENT="no-cache">