Каталог артыкулаў
Вырашэнне памылкі PHP open_basedir у панэлі VestaCP
Што такое PHP open_basedir?
- Твік абароны PHP open_basedir - гэта мера бяспекі ў бяспечным рэжыме, якая не дазваляе карыстальнікам выкарыстоўваць PHP для адкрыцця файлаў або сцэнарыяў, размешчаных па-за межамі іх хатняга каталога, калі гэтая папка не была яўна выключана.
- Уключэнне налады PHP open_basedir гарантуе, што ўсе аперацыі з файламі будуць абмежаваныя файламі ў пэўным каталогу, прадухіляючы доступ скрыптоў php ад пэўнага карыстальніка да файлаў у несанкцыянаваных уліковых запісах карыстальнікаў.
- Калі скрыпт спрабуе адкрыць файл з дапамогай, напрыклад, fopen() або gzopen(), месцазнаходжанне файла правяраецца.
Ёсць дадатковыя падручнікі па панэлях VestaCP тут ▼
Калі файл перавышае вызначанае або дазволенае дрэва каталогаў, PHP адмовіцца адкрываць яго, можа ўзнікнуць памылка, падобная да наступнай:
PHP Warning: require(): open_basedir restriction in effect. File(/home/admin/web/project/www/app/autoload.php) is not within the allowed path(s): (/home/admin/web/project/public_shtml:/home/admin/tmp) in /home/admin/web/project/www/web/app.php on line 6 PHP Warning: require(/home/admin/web/project/www/app/autoload.php): failed to open stream: Operation not permitted in /home/admin/web/project/www/web/app.php on line 6 PHP Fatal error: require(): Failed opening required '/home/admin/web/project/www/web/../app/autoload.php' (include_path='.:/usr/share/php') in /home/admin/web/project/www/web/app.php on line 6
Рашэнне
Крок 1: Доступ да адпаведнага даменнага імя «WEB Service».
Крок 2: Змяніце "Вэб-шаблон HTTPD"
- Змяніце "Вэб-шаблон HTTPD" са "па змаўчанні" на "phpcgi" ▼

Крок 3: Перазапусціце службу Apache з дапамогай наступнай каманды ▼
service httpd restart
Гэта распаўсюджаная праблема ў сістэмах Linux . Проста выканайце вышэйапісаныя дзеянні; не патрабуецца мадыфікацыя кода, і яе можна хутка вырашыць усяго за 3 крокі. Гэта вельмі проста! ^_^
注意 事项
- Ніколі не выбірайце "phpfcgid", таму што ён можа спажываць занадта шмат памяці і выклікаць частыя праблемы з памылкай 500.
Калі вы настойваеце на выкарыстанні шаблону "phpfcgid", Чэнь Вэйлян прапануе аптымізаваць яго налады перад выкарыстаннем. ▼
Спадзяюся, артыкул «Як выправіць памылку PHP open_basedir у панэлі VestaCP?», апублікаваны ў блогу Чэня Вэйляна ( https://www.chenweiliang.com/ ), будзе вам карысным.
Не саромейцеся падзяліцца спасылкай на гэты артыкул: https://www.chenweiliang.com/cwl-734.html


