এটি ক্যাশে করা সংক্রান্ত একটি সংক্ষিপ্ত এবং মিষ্টি পোস্ট। সাইটগুলি এবং ব্রাউজারগুলি রিসোর্সগুলি সত্যিই অনুকূল করতে তৈরি করা হয়েছে। তারা এটি কখনও কখনও এত ভাল করে তোলে যে শেষ ফলাফলটি আপনার পছন্দসই ওয়েবসাইটটিকে যতবার ইচ্ছা আপডেট করার পরিবর্তে আপনার ডায়নামিক ওয়েবসাইটটি ভেঙে দেয়। আজ আমি সাথে কাজ ছিল জেডাব্লু প্লেয়ার, একটি ফ্ল্যাশ মুভি প্লেয়ার যা এক্সএমএল ফাইলের মাধ্যমে চলচ্চিত্রের তালিকায় টান দেয়।
সমস্যাটি হ'ল আমরা সর্বদা নতুন ওয়েবিনার এবং প্রশিক্ষণ ক্লাসের সাথে ফাইল আপডেট করি। যদি আমাদের ক্লায়েন্টরা প্রতিদিন পৃষ্ঠায় আসতে থাকে তবে এটি প্লেলিস্টের ক্যাশেড সংস্করণটি লোড করবে এবং এগুলি সর্বশেষতম এবং সর্বশ্রেষ্ঠটি কখনই প্রদর্শন করবে না।
ফলস্বরূপ, আমাকে হ্যাক করতে হয়েছিল এসডাব্লুএফ অবজেক্ট কোড যাতে মনে হয় যে এটি প্রতিবার একটি নতুন প্লেলিস্ট লোড করছে was
var video = new SWFObject('player.swf','mpl','670','280','9'); var playlist = 'playlist.xml't='+Math.round(1000 * Math.random()); video.addParam('allowscriptaccess','always'); video.addParam('allowfullscreen','true'); video.addParam('flashvars','&file='+playlist+'&playlistsize=350&controlbar=over&playlist=right'); video.write('video');
আমি প্লেয়ারটিকে যেভাবে ঠকিয়েছি তা হল তালিকার নামটিতে একটি ক্যোরিস্ট্রিং রেখে জাভাস্ক্রিপ্ট ব্যবহার করে একটি এলোমেলো সংখ্যা তৈরি করা। পৃষ্ঠাটি কে হিট করে তা বিবেচনা না করেই, এটি আলাদা ফাইলের নাম সন্ধান করতে চলেছে, তাই প্লেয়ারটি প্রতিবার নতুন করে প্লেলিস্টে টানবে।
এটি কেবল জেডাব্লু প্লেয়ারের পক্ষে কার্যকর নয়, গতকাল পরিবর্তনশীল কেএমএল ফাইলগুলির সাথে ডিল করার সময় আমি Google মানচিত্রের জন্যও এই কৌশলটি ব্যবহার করেছি। কেবল একটি এলোমেলো ক্যোরিস্ট্রিং উত্পন্ন করুন এবং ব্যবহারকারী প্রতিবার দেখার সময় সিস্টেমটি (মোটামুটি স্থিতিশীল) কেএমএল ফাইল পুনরায় লোড করবে। এটি একটি হ্যাক, তবে মূলত ক্যাচিং চালু করার এটি সহজ উপায় বন্ধ এই অ্যাপ্লিকেশনগুলিতে বিকল্প নেই।
দুর্দান্ত হ্যাক 🙂