ฉันควรทำอย่างไรหากข้อผิดพลาด PHP open_basedir เกิดขึ้นในแผง VestaCP

การแก้ไขข้อผิดพลาด 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:เข้าถึงชื่อโดเมนที่เกี่ยวข้อง "บริการเว็บ"

ขั้นตอนที่ 2:แก้ไข "เทมเพลตเว็บ HTTPD"

  • โปรดเปลี่ยน "Web Template HTTPD" จาก "default" เป็น "phpcgi" ▼

ในแผงควบคุม VestaCP ให้เปลี่ยน "Web Template HTTPD" จาก "default" เป็น "phpfcgid"

ขั้นตอนที่ 3:รีสตาร์ทบริการ Apache โดยใช้คำสั่งต่อไปนี้ ▼

service httpd restart

นี่เป็น ปัญหาที่พบได้ทั่วไปในระบบ Linuxเพียงทำตามขั้นตอนข้างต้น ไม่จำเป็นต้องแก้ไขโค้ด และสามารถแก้ไขได้อย่างรวดเร็วภายใน 3 ขั้นตอน ง่ายมาก! ^_^

注意事项

  • อย่าเลือก "phpfcgid" เพราะใช้หน่วยความจำมากเกินไปได้ง่าย และทำให้เกิดปัญหาข้อผิดพลาด 500 ครั้งบ่อยครั้ง

หากคุณยืนยันที่จะใช้เทมเพลต "phpfcgid" เฉิน เว่ยเหลียงแนะนำให้ปรับแต่งการตั้งค่าก่อนใช้งาน ▼

หวังว่า บทความ "วิธีแก้ไขข้อผิดพลาด PHP open_basedir ในแผงควบคุม VestaCP?" ที่แชร์บนบล็อกของ Chen Weiliang ( https://www.chenweiliang.com/ ) จะเป็นประโยชน์กับคุณ

โปรดแชร์ลิงก์บทความนี้ได้ตามสบาย: https://www.chenweiliang.com/cwl-734.html

หากต้องการปลดล็อคเคล็ดลับที่ซ่อนอยู่เพิ่มเติม ยินดีต้อนรับเข้าร่วมช่อง Telegram ของเรา!

แชร์และกดไลค์ถ้าคุณชอบ! การแชร์และการถูกใจของคุณคือแรงบันดาลใจอย่างต่อเนื่องของเรา!

 

发表评论

您的邮箱地址不会被公ปริญญา。必填项已用*标注

เลื่อนไปที่ด้านบน