عملية التشغيل
عملية بدء العمل
بعد تنفيذ php start.php start
، يتم تنفيذ عملية التشغيل كما يلي:
- تحميل التكوينات من مجلد config/
- ضبط إعدادات العمل (Worker) ذات الصلة مثل
pid_file
stdout_file
log_file
max_package_size
وغيرها - إنشاء عملية webman والاستماع إلى المنفذ (الإفتراضي 8787)
- إنشاء عمليات مخصصة وفقًا للتكوين
- بعد بدء تشغيل عملية webman والعمليات المخصصة، يتم تنفيذ المنطق التالي (وهو جميعه مُنفَذ في onWorkerStart):
① تحميل الملفات المعينة فيconfig/autoload.php
، مثلapp/functions.php
② تحميل الوسيطة المُعينة فيconfig/middleware.php
(بما في ذلكconfig/plugin/*/*/middleware.php
)
③ تنفيذconfig/bootstrap.php
(بما في ذلكconfig/plugin/*/*/bootstrap.php
)، وذلك لتهيئة بعض الوحدات، مثل اتصال قاعدة بيانات Laravel
④ تحميلconfig/route.php
(بما في ذلكconfig/plugin/*/*/route.php
)، والذي يعرف المسارات
عملية معالجة الطلب
- التحقق مما إذا كان عنوان URL للطلب يُطابق ملفًا ثابتًا في public، إذا كان كذلك يتم إرجاع الملف (انتهاء الطلب)، إذا كان لا يتم المتابعة إلى الخطوة 2
- استنادًا إلى عنوان URL، التحقق مما إذا كان يُطابق أحد المسارات، إذا لم يكن، يتم المتابعة إلى الخطوة 3، وإذا كان كذلك، يتم المتابعة إلى الخطوة 4
- التحقق مما إذا تم إغلاق المسار الافتراضي، إذا تم ذلك، يتم إرجاع كود 404 (انتهاء الطلب)، وإذا لم يتم ذلك، يتم المتابعة إلى الخطوة 4
- العثور على وسيطة الطلب الخاصة بالتحكم، وتنفيذ الأنشطة الفرعية للوسيطة بالترتيب (مرحلة الطلب في نموذج البصل)، تنفيذ المنطق التجاري للتحكم، تنفيذ الأنشطة الختامية للوسيطة (مرحلة الاستجابة في نموذج البصل)، وانتهاء الطلب. (يرجى الرجوع إلى نموذج وسيطة البصل)