0 က်ဘ်ဆိုက်ဖွံ့ဖြိုးတိုးတက်မှုနှင့်ထိန်းသိမ်းခြင်းတွင်တည်ငြိမ်သောအရင်းအမြစ်များ၏သမာဓိရှိသည့်သဘာ 0 အရင်းအမြစ်များ (ဥပမာ CSS, JavaScript ဖိုင်များ, ရုပ်ပုံများစသည်တို့) ၏သမာဓိကို 0 က်ဘ်ဆိုက်၏လုံခြုံရေးနှင့်အသုံးပြုသူအတွေ့အကြုံများကိုသေချာစေရန်အလွန်အရေးကြီးသည်။ သို့သော်များသောအားဖြင့် static အရင်းအမြစ်များသည်အသုံးပြုသူများကိုပုံမှန်မဟုတ်သောအကြောင်းအရာများကိုပုံမှန်မဟုတ်သောအကြောင်းအရာများကို 0 င်စေပြီးလုံခြုံရေးအန္တရာယ်များကိုပင်ဖြစ်ပေါ်စေသည်။ ဤဆောင်းပါးသည် 0 က်ဘ ် ဆိုက်၏တည်ငြိမ်သောအရင်းအမြစ်များနှင့်အတူအနှောင့်အယှက်ပေးမှုရှိ,
MD5_File () သည် PHP တွင်ဖိုင်တစ်ခု၏ MD5 hash တန်ဖိုးကိုတွက်ချက်ရန် Function ဖြစ်သည်။ ဖိုင်၏ 32-bit hexadecimal-string ကိုပြန်ပို့ခြင်းဖိုင်လမ်းကြောင်း parameter ကိုလက်ခံသည်။ ဖိုင်၏ MD5 တန်ဖိုးကိုနှိုင်းယှဉ်ခြင်းအားဖြင့်ဖိုင်အမျိုးအစားပြောင်းလဲသွားပြီလားဆိုတာကိုမြန်မြန်ဆန်ဆန်ဆုံးဖြတ်နိုင်တယ်။
0 ဘ်ဆိုဒ်သည်အွန်လိုင်းတွင်ရှိပြီးနောက်ပုံမှန်အရင်းအမြစ်များကိုအနှောင့်အယှက်ပေးရန်ပုံမှန်အရင်းအမြစ်များကိုပုံမှန်ရှာဖွေကြသည်။
ဗားရှင်းဖိုင်များကိုနှိုင်းယှဉ်။ ဖြန့်ကျက်ဖိုင်၏သမာဓိကိုအတည်ပြုပါ။
Third-party စာကြည့်တိုက်ဖိုင်များ၏လုံခြုံရေးကိုစောင့်ကြည့်ပါ။
ပထမ ဦး စွာ Calculate နှင့် static အရင်းအမြစ်ဖိုင်ပေါ်တွင်ကန ဦး MD5 တန်ဖိုးကိုတွက်ချက်ခြင်းနှင့်သိမ်းဆည်းခြင်း။
ဤဖိုင်များကိုပုံမှန်ဖြတ်သန်းပြီး MD5 တန်ဖိုးကိုပြန်လည်တွက်ချက်ပါ။
နောက်ဆုံးပေါ်မှကယ်တင်ထားသောသူများနှင့်နောက်ဆုံးပေါ် MD5 တန်ဖိုးများကိုနှိုင်းယှဉ်ကြည့်ပါ။
အကယ်. MD5 တန်ဖိုးများသည်ကိုက်ညီမှုမရှိပါကဖိုင်ကိုပြုပြင်မွမ်းမံခြင်းသို့မဟုတ်အတိုချုပ်ထားသည်။
အောက်ပါဥပမာသည် PPP ကိုအသုံးပြုရမည်ကိုဖော်ပြထားသည် မှာ PPP ကို အသုံးပြုရမည်ကိုပြသသည်။
<?php
// စောင့်ကြည့်လေ့လာရေးလမ်းညွှန်
$directory = __DIR__ . '/static';
// သိုထားMD5ဖိုင်ဖိုင်(သိုလှောင်မှုပုံစံဖြစ်ပါတယ် json)
$md5RecordFile = __DIR__ . '/md5_records.json';
// သမိုင်းကိုဖတ်ပါMD5စံချိန်
$oldMd5Records = file_exists($md5RecordFile) ? json_decode(file_get_contents($md5RecordFile), true) : [];
// directory အတွက် static ဖိုင်များကိုရယူပါ
$files = new RecursiveIteratorIterator(new RecursiveDirectoryIterator($directory));
$changedFiles = [];
$newMd5Records = [];
foreach ($files as $file) {
if ($file->isFile()) {
$filePath = $file->getPathname();
// လက်ရှိဖိုင်ကိုတွက်ချက်ပါMD5အဘိုး
$md5 = md5_file($filePath);
// စံချိန်当前MD5
$relativePath = str_replace($directory . DIRECTORY_SEPARATOR, '', $filePath);
$newMd5Records[$relativePath] = $md5;
// ပိုများသောMD5အသစ်နှင့်အတူMD5
if (!isset($oldMd5Records[$relativePath]) || $oldMd5Records[$relativePath] !== $md5) {
$changedFiles[] = $relativePath;
}
}
}
// output detection ရလဒ်များ
if (count($changedFiles) > 0) {
echo "အောက်ပါဖိုင်များကိုပြုပြင်မွမ်းမံခြင်းသို့မဟုတ်ထည့်သွင်းထားသည်:\n";
foreach ($changedFiles as $changedFile) {
echo "- " . $changedFile . "\n";
}
} else {
echo "ဖိုင်အားလုံးမပြောင်းလဲကြဘူး。\n";
}
// သိုထား最新MD5စံချိန်
file_put_contents($md5RecordFile, json_encode($newMd5Records, JSON_PRETTY_PRINT));
?>
တည်ငြိမ်သော လမ်းညွှန်သည် static အရင်းအမြစ်များကိုသိုလှောင်ထားသည့်လမ်းညွှန်တစ်ခုဖြစ်သည်။
MD5 Record file MD5_Records.json ကိုပိုမိုလွယ်ကူစွာနှိုင်းယှဉ်မှုများအတွက် MD5 တန်ဖိုးကိုသိမ်းဆည်းရန်အသုံးပြုသည်။
ဤ script သည်ပြောင်းလဲထားသောဖိုင်များစာရင်းကိုဖော်ပြထားသည်။
သင်သည်ဤ script ကိုအလိုအလျောက်စောင့်ကြည့်လေ့လာခြင်းကိုရရှိရန်အတွက်အချိန်ကာလကိုအချိန်ဇယားအတိုင်းသတ်မှတ်ထားနိုင်သည်။
အလိုအလျောက်နှိုးစက် <br> <br> ဖိုင်ကိုပြုပြင်ရန်ရှာဖွေတွေ့ရှိသောအခါအုပ်ချုပ်ရေးမှူးအားအလားအလာရှိသောအန္တရာယ်များကိုသေချာစွာကိုင်တွယ်ရန်အီးမေးလ်သို့မဟုတ်စာသားမက်ဆေ့ခ်ျဖြင့်အကြောင်းကြားနိုင်သည်။
whitelist စီမံခန့်ခွဲမှု <br> မကြာခဏပြောင်းလဲနေသည့်အချို့သောစာရွက်စာတမ်းများအတွက်မူလုံခြုံရေးကိုမထိခိုက်ပါ, သို့သော်မှားယွင်းသောနှိုးစက်များကိုရှောင်ရှားရန် Whitelist ကိုဖန်တီးပါ။
အားကောင်းတဲ့ cryptographic hashing algorithm <br> အကယ်. လုံခြုံရေးလိုအပ်ချက်များသည်ပိုမိုမြင့်မားပါက MD5_File ('Sha256', $ filpath) ကို သင်အသုံးပြုနိုင်သည်။
ဗားရှင်းထိန်းချုပ်မှုစနစ်နှင့်အတူပေါင်းစပ် <br> Static အရင်းအမြစ်များကိုစီမံခန့်ခွဲရန် Git ကဲ့သို့သောကိရိယာများကို အသုံးပြု. ဖိုင်လုံခြုံရေးကိုသေချာစေရန် MD5_File () ကို ပေါင်းစပ်ပါ။
PHP ၏ MD5_File () function ကိုအသုံးပြုခြင်းသည် 0 ဘ်ဆိုဒ်များရှိငြိမ်ပတ်အရင်းအမြစ်များကိုစစ်ဆေး။ ရှာဖွေတွေ့ရှိရန်နှင့်ရှာဖွေတွေ့ရှိရန်လွယ်ကူစွာနှင့်ထိရောက်သောနည်းလမ်းဖြစ်သည်။ Developeries သည်ဖိုင်များ၏အချိန်တိုအတွင်းကိုအချိန်မီစိတ် 0 င်စားမှုနှင့် 0 က်ဘ်ဆိုက်အကြောင်းအရာ၏သမာဓိနှင့်လုံခြုံမှုကိုသေချာစေရန်အတွက် developer များရှာဖွေတွေ့ရှိရန်ကူညီနိုင်သည်။ အလိုအလျောက် script များနှင့်နှိုးစက်ယန္တရားများနှင့်ပူးပေါင်းပါ 0 င်သောဝက်ဘ်ဆိုက်လုံခြုံရေးပြုပြင်ထိန်းသိမ်းမှု၏ထိရောက်မှုကိုများစွာတိုးတက်စေနိုင်သည်။