การดำเนินการ
ขั้นตอนการเริ่มกระบวนการ
เมื่อเรียกใช้คำสั่ง php start.php start ขั้นตอนการดำเนินการจะเป็นดังนี้:
- โหลดการกำหนดค่าจากโฟลเดอร์ config/
- ตั้งค่าที่เกี่ยวข้องกับ Worker เช่น
pid_filestdout_filelog_filemax_package_sizeเป็นต้น - สร้างกระบวนการ webman และฟังพอร์ต (ค่าปริยายคือ 8787)
- สร้างกระบวนการที่กำหนดเองตามการกำหนดค่า
- หลังจากที่กระบวนการ webman และกระบวนการที่กำหนดเองเริ่มทำงาน จะดำเนินการตามลำดับต่อไปนี้ (ซึ่งทั้งหมดจะเกิดขึ้นใน onWorkerStart):
① โหลดไฟล์ที่กำหนดในconfig/autoload.phpเช่นapp/functions.php
② โหลด middleware ที่กำหนดในconfig/middleware.php(รวมถึงconfig/plugin/*/*/middleware.php)
③ เรียกใช้วิธี start ของคลาสที่กำหนดในconfig/bootstrap.php(รวมถึงconfig/plugin/*/*/bootstrap.php) เพื่อเริ่มต้นโมดูลบางอย่าง เช่น การเชื่อมต่อกับฐานข้อมูลของ Laravel
④ โหลดเส้นทางที่กำหนดในconfig/route.php(รวมถึงconfig/plugin/*/*/route.php)
ขั้นตอนการจัดการคำขอ
- ตรวจสอบว่า URL ที่ร้องขอตรงกับไฟล์สถิติตรงโฟลเดอร์ public หรือไม่ ถ้าใช่ให้ส่งคืนไฟล์ (สิ้นสุดคำขอ) ถ้าไม่ใช่ให้ไปที่ข้อ 2
- ตรวจสอบว่า URL ตรงกับเส้นทางใดเส้นทางหนึ่งหรือไม่ ถ้าไม่ตรงให้ไปที่ข้อ 3 ถ้าตรงให้ไปที่ข้อ 4
- ถ้าได้ปิดเส้นทางเริ่มต้นไว้ ให้ส่งคืน 404 (สิ้นสุดคำขอ) ถ้าไม่ให้ไปที่ข้อ 4
- ค้นหาสิ่งที่ middleware ที่ตรงกับตัวควบคุมตามคำขอ จากนั้นดำเนินการตามลำดับของการดำเนินการเบื้องต้นของ middleware (ขั้นตอนการร้องขอแบบ Onion Model) ดำเนินการตามตรรกะทางธุรกิจของตัวควบคุม และดำเนินการตามลำดับของการดำเนินการหลังจาก middleware (ขั้นตอนการตอบสนองแบบ Onion Model) คำขอสิ้นสุด (ดูข้อมูลเพิ่มเติมที่ Middleware Onion Model)