ฉันกำลังทำงานกับแอปพลิเคชัน PHP ที่ใช้ fpassthru
ฟังก์ชันในตัว ซึ่งอ่านเนื้อหาจากสตรีมหรือตัวชี้ไฟล์ และส่งออกไปยังเอาต์พุตบัฟเฟอร์ มันคล้ายกันมากกับ อ่านไฟล์
ฟังก์ชัน แต่อนุญาตให้ฉันเริ่มเอาต์พุตที่ออฟเซ็ตเฉพาะ
ผู้ให้บริการโฮสติ้งส่วนใหญ่ที่ฉันทดสอบผลิตภัณฑ์ด้วย ทำงานได้ดี และรวมถึงสภาพแวดล้อมโฮสติ้งแบบหลายผู้เช่าที่ใช้ร่วมกัน อย่างไรก็ตาม ฉันพบบางส่วนที่มี fpassthru()
ฟังก์ชัน "ปิดใช้งานด้วยเหตุผลด้านความปลอดภัย" ฉันใช้เวลาหลายชั่วโมงในการค้นคว้าว่าทำไมบางคนถึงปิดการใช้งาน fpassthru
ฟังก์ชั่น แต่ไม่ใช่ฟังก์ชั่นเช่น เปิด
, กลัว
, file_get_contents
เช่นเดียวกับ อ่านไฟล์
แต่ฉันไม่พบสิ่งที่เป็นประโยชน์จริงๆ
นี่อาจฟังดูงี่เง่า แต่การเดาที่ใกล้เคียงที่สุดของฉันก็คือโฮสต์เหล่านี้ถูกปิดใช้งาน fpassthru
เข้าใจผิดว่าเป็น ผ่าน
ซึ่งรับประกันการปิดใช้งานโดยเฉพาะอย่างยิ่งในสภาพแวดล้อมที่ใช้ร่วมกัน บอกเลยว่าของจริง ผ่าน
ฟังก์ชั่น (พร้อมกับ ผู้บริหาร
และคนอื่นๆ ในครอบครัว) ก็ถูกปิดใช้งานในโฮสต์เหล่านี้เช่นกัน
ฉันพยายามติดต่อโฮสต์เหล่านี้และถามพวกเขาว่าทำไม
ฉันไม่สามารถทำยอดขายที่ Flywheel ได้ พวกเขาบอกว่าไม่สามารถตอบคำถามของฉันได้ และมีเพียงฝ่ายสนับสนุนเท่านั้นที่ทำได้ และเพื่อที่จะติดต่อฝ่ายสนับสนุน ฉันต้องกลายเป็นลูกค้า คลาสสิก
RunCloud ดูเหมือนจะมีความหวังมากกว่าในตอนแรก ฉันได้ผ่านเป็น "วิศวกรระบบระดับ 3" และต้องใช้เวลาอีกสองสามวันกว่าจะได้เป็น "Sr. Systems Engineneer" ซึ่งฉันได้รับข้อความต่อไปนี้:
เป็นแนวทางปฏิบัติที่ดีที่สุดสำหรับ PHP บน RunCloud และเป็นแนวทางปฏิบัติที่ดีที่สุดสำหรับเรา
ฉันขอให้พวกเขาอธิบายเพิ่มเติม แต่ไม่ได้รับการตอบกลับมาระยะหนึ่งแล้ว ดังนั้นฉันจึงสิ้นหวัง
แค่ชี้แจง ฉันไม่ได้มองหาวิธีแก้ไข fpassthru()
. ฉันกำลังมองหาเหตุผลว่าทำไมบางครั้งจึงแสดงรายการข้างฟังก์ชัน "อันตราย" เช่น ผู้บริหาร ()
, ระบบ()
, พาสทรู()
, pcntl_fork()
และอื่น ๆ ในขณะที่มี อ่านไฟล์ ()
, file_get_contents()
ฯลฯ ทำงานได้ดี
หากคุณมีข้อมูลเชิงลึกใด ๆ โปรดแบ่งปัน!