PHP တွင် Session_Start () နှင့် session_cache_limiter () တွင် session_cache_limiter () သည် session စီမံခန့်ခွဲမှုနှင့် cacheation မဟာဗျူဟာများနှင့်ကိုင်တွယ်သောအရေးကြီးသောလုပ်ဆောင်ချက်နှစ်ခုဖြစ်သည်။ Developer များကဘုံအမှားများကိုရှောင်ရှားရန်နှင့်လျှောက်လွှာစွမ်းဆောင်ရည်ကိုတိုးတက်စေရန်နှင့် application service ကိုတိုးတက်စေရန်နှင့်ပူးပေါင်းသူများအားမည်သို့ကူညီနိုင်သည်ကိုနားလည်ရန်ကူညီသည်။ ဤဆောင်းပါးသည် session အစကိုချောချောမွေ့မွေ့စတင်ရန်နှင့် cache control ကိုအကောင်းဆုံးဖြစ်စေရန်ဤလုပ်ငန်းဆောင်တာနှစ်ခုနှင့်မည်သို့ထိရောက်စွာပူးပေါင်းဆောင်ရွက်ရန်ဆွေးနွေးပါမည်။
Session_COCE_LIMIDER () PHP session cache အတွက်ကန့်သတ်ချက်ကိုသတ်မှတ်ရန်သို့မဟုတ်ရယူရန်အသုံးပြုသည်။ ၎င်း၏ပုံမှန်တန်ဖိုးသည်များသောအားဖြင့် "noCache" ဖြစ်ပြီး browser သည်နှင့်သက်ဆိုင်သောအကြောင်းအရာများကိုမကိုက်ညီသောကြောင့်ဖြစ်သည်။ ဤလုပ်ဆောင်မှုမှတစ်ဆင့် developer များက session data ၏ cache ကိုအပြုအမူကို granularularly controlularly ထိန်းချုပ်နိုင်သည်။
"nocache" : cache မရှိပါ။
"အများပြည်သူ" - အများပြည်သူအကြောင်းအရာကို cache ။
"ပုဂ္ဂလိက" : သီးသန့် content ကို cache ။
"private_no_expire" : သီးသန့် cache ပါဝင်မှု, ဒါပေမယ့်သက်တမ်းကုန်ဆုံးချိန်ကိုမသတ်မှတ်ထားပါ။
Session_Start () မခေါ်မီဤလုပ်ဆောင်မှုကိုအသုံးပြုရမည်။ သို့မဟုတ်ပါကအလုပ်မလုပ်ပါ။
Session_Start () သည် session အသစ်တစ်ခုကိုစတင်ရန်သို့မဟုတ်ရှိပြီးသား session တစ်ခုကိုပြန်ယူရန်အသုံးပြုသည်။ Session identifier (များသောအားဖြင့် phpsessid) ကိုတောင်းဆိုသည့် session အမှတ်အသား (များသောအားဖြင့် phpsessid ) အပေါ် အခြေခံ. အစည်းအဝေးအချက်အလက်များကိုရှာဖွေတွေ့ရှိလိမ့်မည်။
ပုံမှန်အားဖြင့် PHP သည် session cache ကိုအလိုအလျောက်စီမံသည်။ သို့သော်သင် session_cache_limiter () နှင့် session_start () နှင့်အတူ pression_cache_limiter () ကိုအသုံးပြု။ ပိုမို granary cache ထိန်းချုပ်မှုလိုအပ်ပါကအကောင်းဆုံးအလေ့အကျင့်ဖြစ်ပါတယ်။
session တစ်ခုမစတင်မီ cache policy ကိုသတ်မှတ်ရန် session_cache_limiter () function ကိုသုံးပါ။ အကယ်. cache ကိုမသတ်မှတ်ပါက browser သည် session cache ကို cache လုပ်နိုင်သည်, အလားအလာရှိသောလုံခြုံရေးအန္တရာယ်များသို့မဟုတ် application ၏ကြိုတင်ခန့်မှန်း။ မရသောအပြုအမူများကိုဖြစ်ပေါ်စေသည်။
session_cache_limiter('nocache'); // cache ကိုမထားပါနှင့် cache ကိုကန့်သတ်ထားပါ
session_start(); // session တစ်ခုစတင်ပါ
သင်၏လျှောက်လွှာမှလိုအပ်သော cache ပေါ်လစီအပေါ် အခြေခံ. ကွဲပြားခြားနားသော parameters တွေကိုရွေးချယ်ပါ။ ဥပမာအားဖြင့်, session data သည်အထိခိုက် မ ခံပါက, သင်၏စာမျက်နှာသည် static သည် static ဖြစ်ပြီးအသုံးပြုသူ session data ပေါ်တွင်မူတည်သည်မဟုတ်လျှင် "အများသုံး" သို့မဟုတ် "ပုဂ္ဂလိက" ကိုသုံးနိုင်သည်။
// တည်ငြိမ်သောအကြောင်းအရာများအတွက်သင့်တော်သည်
session_cache_limiter('public');
session_start();
အကယ်. သင်၏သင်ခန်းစာတွင်အထိခိုက်မခံသောအချက်အလက်များပါ 0 င်ပါက Nocache သို့မဟုတ် private_no_no_expire ကို အသုံးပြုခြင်းသည် browser cache ကိုအသုံးပြုခြင်းကိုတားဆီးနိုင်သည်။ အောက်ပါဥပမာသည်ဤမဟာဗျူဟာကိုမည်သို့အကောင်အထည်ဖော်ရမည်ကိုပြသသည်။
session_cache_limiter('private_no_expire');
session_start();
ဤသည် browser သည် session content ကို cache session content ကို cache မလုပ်ဘဲအထိခိုက်မခံသောအချက်အလက်များကိုမတော်တဆသိမ်းဆည်းထားခြင်းမှတားဆီးထားသည်။
session_cache_limiter () () ကို စာမျက်နှာမဖွင့်မီဖုန်းဆက်ရမည်။ PHP အစည်းအဝေးများသည် HTTP ခေါင်းစီးများကိုစီမံရန်လိုအပ်သည်။ ၎င်းသည် HTML သို့မဟုတ်အခြား output ကိုမပို့မီပြုလုပ်ရမည်။
// မည်သည့် output မတိုင်မီခေါ်ဆိုရန်သေချာပါစေ
session_cache_limiter('nocache');
session_start();
cache header session ကို debug လုပ်ဖို့, headers_sent () function ကိုသုံးနိုင်တယ်။
if (headers_sent()) {
echo "Headers already sent.";
} else {
session_cache_limiter('nocache');
session_start();
}
ဘုံအမှားတစ်ခုမှာ Session_Start () မခေါ်ယူမီ PHP ကိုပုံမှန် session header ကိုမှန်ကန်စွာသတ်မှတ်ရန်ပျက်ကွက်စေသည်။ session_start () မခေါ်မီ HTML output မရှိပါ။
အကယ်. သင်၏လျှောက်လွှာသည် phpsessid ကဲ့သို့သော session identifiers များ (ဥပမာ phpsessid ကဲ့သို့သော) ကို URL မှတစ်ဆင့်ဖြတ်သွားပါကသင်ခန်းစာအချက်အလက်များကိုမတော်တဆသိမ်းဆည်းထားကြောင်းသေချာအောင်ပြုလုပ်ရမည်။ ဆာဗာကို configure လုပ်ခြင်း (သို့ ) session_cache_limiter () function ကိုသုံးခြင်းဖြင့်၎င်းကိုသင်ထိန်းချုပ်နိုင်သည်။
session_cache_limiter('nocache');
session_start();
ယခုအချိန်တွင်ဘရောက်ဇာသည် session အမှတ်အသားနှင့်အတူအကြောင်းအရာများကို cache မလုပ်နိုင်ပါ။
အချို့သောသီးခြားဖြစ်ရပ်များတွင်သင် URL တွင် session အမှတ်အသားကိုဖြတ်ကျော်ရန်လိုအပ်နိုင်သည်။ လုံခြုံရေးသေချာစေရန် HTTPS ကိုအသုံးပြုရန်နှင့် session_start () မတိုင်မီသင့်လျော်သော cachearing ပေါ်လစီသတ်မှတ်ရန်အကြံပြုသည်။
session_cache_limiter('private_no_expire');
session_start();
ထို့အပြင် Session.cookie_Secure ကို Session.cookie_Secure ကို ချိန်ညှိခြင်းဖြင့် session cookies များကိုသာလုံခြုံသောဆက်သွယ်မှုတစ်ခုဖြင့်သာပေးပို့နိုင်သည်။
PHP တွင် session_cache_limiter () နှင့် session_start (session_start) ၏ဆင်ခြင်တုံတရားအသုံးပြုခြင်းသည်သင်ခန်းစာစီမံခန့်ခွဲမှုနှင့်လျှောက်လွှာလုံခြုံရေးကိုတိုးတက်စေရန်ကူညီနိုင်သည်။ Cache မူဝါဒများကိုကွဲပြားခြားနားသောအခြေအနေများတွင်မည်သို့သတ်မှတ်ရမည်ကိုကျွမ်းကျင်ပါကမမှန်ကန်သောထွက်ရှိမှုကိုရှောင်ရှားပါ။