ဆောင်းပါးလမ်းညွှန်
HestiaCP ကို အသုံးပြု၍ သင့် server ကို စီမံခန့်ခွဲသည့်အခါ shell_exec၊ passthru၊ system နှင့် exec ကဲ့သို့သော default အားဖြင့် disable လုပ်ထားသော PHP function အချို့ကို enable လုပ်ရန် လိုအပ်နိုင်ပါသည်။
ဤလုပ်ဆောင်ချက်များသည် အလွန်အစွမ်းထက်သော်လည်း ၎င်းတို့သည် အချို့သော လုံခြုံရေးအန္တရာယ်များကိုလည်း တင်ပြထားသောကြောင့် ၎င်းတို့ကို မဖွင့်မီတွင်၊ သင့်ဆာဗာပတ်ဝန်းကျင်သည် လုံခြုံပြီး ယုံကြည်စိတ်ချရသော အသုံးပြုသူများကိုသာ ဝင်ရောက်ခွင့်ပြုထားကြောင်း သေချာပါစေ။
ဤ PHP လုပ်ဆောင်ချက်များကို အဘယ်ကြောင့် ဖွင့်ထားရန် လိုအပ်သနည်း။
ဤလုပ်ဆောင်ချက်များသည် အချို့သောအခြေအနေများတွင် အလွန်အသုံးဝင်ပါသည်။
ဥပမာအားဖြင့်၊ ဤလုပ်ဆောင်ချက်များသည် WordPress plugin အချို့ကို ဖွင့်ရန် လိုအပ်သည့်အခါ သို့မဟုတ် server ပေါ်တွင် system command များကို execute လုပ်ရန် လိုအပ်သည့်အခါ မရှိမဖြစ် လိုအပ်ပါသည်။
မည်သို့ပင်ဆိုစေကာမူ၊ ဤလုပ်ဆောင်ချက်များသည် အလားအလာရှိသော လုံခြုံရေးအန္တရာယ်များကိုလည်း ဖြစ်စေပါသည်။
မမှန်မကန်အသုံးပြုခြင်းသည် ဆာဗာတိုက်ခိုက်မှုများကို ဖြစ်ပေါ်စေနိုင်သောကြောင့် ကျေးဇူးပြု၍ သတိဖြင့် ဆက်လက်လုပ်ဆောင်ပါ။
php.ini ဖိုင်ကို တည်းဖြတ်ပါ။
ဤလုပ်ဆောင်ချက်များကိုဖွင့်ရန်၊ သင်သည် php.ini ဖိုင်ကို ဦးစွာတည်းဖြတ်ရန် လိုအပ်သည်။
ဤသည်မှာ PHP ၏ အမျိုးမျိုးသော ဆက်တင်များကို ထိန်းချုပ်သည့် PHP configuration ဖိုင်ဖြစ်သည်။

အဆင့် 1: php.ini ဖိုင်ကို ရှာပါ။
HestiaCP တွင်၊ သင်သည် အောက်ပါလမ်းကြောင်းမှတစ်ဆင့် php.ini ဖိုင်ကို ရှာဖွေပြီး တည်းဖြတ်နိုင်သည်-
- HestiaCP ထိန်းချုပ်မှု panel ကိုဝင်ပါ။
- ဆာဗာဆက်တင်များသို့ သွားပါ။
- Edit PHP Service ကို နှိပ်ပါ (ဝန်ဆောင်မှုအမည်ကို သင် အပေါ်မှာ မြှပ်ထားသောအခါ ခဲတံအိုင်ကွန် ပေါ်လာသည်)။
- အဆင့်မြင့် ရွေးစရာများကို ရွေးပါ။
ဤတွင်၊ သင်သည် php.ini ဖိုင်ကို ပြင်ဆင်နိုင်သည်။
အဆင့် 2- disable_functions ဆက်တင်များကို ပြင်ဆင်ပါ။
php.ini ဖိုင်တွင် disable_functions ဟုခေါ်သော ဆက်တင်တစ်ခု ရှိသည်။
ဤဆက်တင်သည် မည်သည့် PHP လုပ်ဆောင်ချက်များကို ပိတ်ထားသည်ကို သတ်မှတ်သည်။
shell_exec၊ passthru၊ system နှင့် exec တို့ကို enable လုပ်ရန်အတွက် ၎င်းတို့ကို disable_functions list မှ ဖယ်ရှားရန် လိုအပ်ပါသည်။
ပြုပြင်မွမ်းမံခြင်းမပြုမီတွင် Disable_functions ဆက်တင်များ-
disable_functions = pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,exec,system,passthru,shell_exec,proc_open,popen
ဤ configuration တွင် shell_exec၊ passthru၊ system နှင့် exec တို့ကို disable လုပ်ထားသည်။
မွမ်းမံထားသော disable_functions ဆက်တင်များ
disable_functions = pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,proc_open,popen
ဤ configuration တွင် shell_exec၊ passthru၊ system နှင့် exec တို့ကို ဖယ်ရှားလိုက်သောကြောင့် ဤလုပ်ဆောင်ချက်များကို ဖွင့်နိုင်စေပါသည်။
အဆင့် 3- ပြောင်းလဲမှုများကို သိမ်းဆည်းပါ။
ပြုပြင်မွမ်းမံမှုများပြီးပါက php.ini ဖိုင်ကို သိမ်းဆည်းပါ။
ဖွဲ့စည်းမှုအသစ်ကို အသုံးချနိုင်စေရန် ပြောင်းလဲမှုအားလုံးကို မှန်ကန်စွာသိမ်းဆည်းထားကြောင်း သေချာပါစေ။
PHP ဝန်ဆောင်မှုကို ပြန်လည်စတင်ပါ။
php.ini ဖိုင်ကို ပြင်ဆင်ပြီး သိမ်းဆည်းပြီးနောက်၊ အပြောင်းအလဲများ အကျိုးသက်ရောက်စေရန်အတွက် PHP ဝန်ဆောင်မှုကို ပြန်လည်စတင်ရန် လိုအပ်သည်။
အောက်ပါအဆင့်များကို လိုက်နာခြင်းဖြင့် PHP ဝန်ဆောင်မှုကို ပြန်လည်စတင်နိုင်သည်-
- HestiaCP ထိန်းချုပ်မှု panel သို့ ပြန်သွားရန်။
- ဆာဗာဆက်တင်များသို့ သွားပါ။
- PHP ဝန်ဆောင်မှုကိုရွေးချယ်ပြီး Restart ကိုနှိပ်ပါ။
ဖွဲ့စည်းမှုပုံစံကို အတည်ပြုပါ။
PHP ဝန်ဆောင်မှုကို ပြန်လည်စတင်ပြီးနောက်၊ ရိုးရှင်းသော PHP script ကို run ခြင်းဖြင့် ဤလုပ်ဆောင်ချက်များကို ဖွင့်ထားကြောင်း စစ်ဆေးနိုင်ပါသည်။
ဥပမာအားဖြင့်၊ သင်သည် အောက်ပါအကြောင်းအရာဖြင့် PHP ဖိုင်တစ်ခုကို ဖန်တီးနိုင်သည်။
<?php
echo shell_exec('echo Hello World');
ထို့နောက် output သည် "Hello World" ဖြစ်ပါက၊ shell_exec လုပ်ဆောင်ချက်ကို ဖွင့်ထားသည်ကို ဆိုလိုသည်။
လုံခြုံရေးအကြံဉာဏ်
ဤလုပ်ဆောင်ချက်များကို ဖွင့်ထားသော်လည်း၊ သတိကိုအသုံးပြုရန် သေချာပါစေ။
သင့်ဆာဗာသည် လုံခြုံပြီး ယုံကြည်စိတ်ချရသော အသုံးပြုသူများသာ ဤအင်္ဂါရပ်များကို အသုံးပြုခွင့်ရှိကြောင်း သေချာပါစေ။
သင့်ဆာဗာ ဆော့ဖ်ဝဲကို မှန်မှန်အပ်ဒိတ်လုပ်ပြီး ခိုင်မာသောစကားဝှက်များနှင့် အခြားလုံခြုံရေးအစီအမံများကို အသုံးပြု၍ သင့်ဆာဗာကို ကာကွယ်ပါ။
အကျဥ်းရုံးသည်
ဒီဆောင်းပါးက HestiaCP မှာ PHP function တွေဖြစ်တဲ့ shell_exec, passthru, system နဲ့ exec တွေကို ဘယ်လို enable လုပ်ရမလဲဆိုတာ ရှင်းပြထားပါတယ်။
ဤလုပ်ဆောင်ချက်များသည် အလွန်အစွမ်းထက်သော်လည်း၊ ၎င်းတို့သည် လုံခြုံရေးအန္တရာယ်ကိုလည်း ဖြစ်စေသည်။
ထို့ကြောင့်၊ ဤလုပ်ဆောင်ချက်များကို ဖွင့်သည့်အခါ၊ သင်၏ဆာဗာသည် လုံခြုံပြီး ယုံကြည်စိတ်ချရသော အသုံးပြုသူများကိုသာ ဝင်ရောက်ခွင့်ပြုကြောင်း သေချာပါစေ။
ဤဆောင်းပါးသည် သင့်အတွက် အထောက်အကူဖြစ်နိုင်မည်ဟု မျှော်လင့်ပါသည်၊ သင့်တွင် မေးခွန်းများရှိပါက၊ ကျွန်ုပ်ထံ ဆက်သွယ်ရန် ကျေးဇူးပြု၍ အခမဲ့ ဆက်သွယ်ပါ။
Chen Weiliang ရဲ့ဘလော့ဂ် ( https://www.chenweiliang.com/ ) မှာ မျှဝေထားတဲ့ "PHP function တွေကို shell_exec, passthru, system, and exec" ဘယ်လိုဖွင့်ရမလဲဆိုတဲ့ ဆောင်းပါးက သင့်အတွက် အထောက်အကူဖြစ်လိမ့်မယ်လို့ မျှော်လင့်ပါတယ်။
ဒီဆောင်းပါးလင့်ခ်ကို မျှဝေပေးဖို့ မတွန့်ဆုတ်ပါနဲ့- https://www.chenweiliang.com/cwl-31853.html
