Yürütme Akışı
İşlem Başlatma Akışı
php start.php start komutu çalıştırıldıktan sonra yürütme akışı şöyledir:
- config/ altındaki yapılandırmaları yüklemek
pid_file,stdout_file,log_file,max_package_sizevb. Worker ile ilgili yapılandırmaları ayarlamak- webman işlemini oluşturup portu dinlemek (varsayılan: 8787)
- Yapılandırmaya göre özel işlemler oluşturmak
- webman işlemi ve özel işlemler başlatıldıktan sonra aşağıdaki mantık çalıştırılır (tümü
onWorkerStartiçinde):
①config/autoload.phpiçinde tanımlanan dosyaları yüklemek, örn.app/functions.php
②config/middleware.php(dahilconfig/plugin/*/*/middleware.php) içinde tanımlanan middleware'leri yüklemek
③config/bootstrap.php(dahilconfig/plugin/*/*/bootstrap.php) içinde tanımlanan sınıflarınstartmetodunu çalıştırmak; Laravel veritabanı bağlantısı gibi modülleri başlatmak için
④config/route.php(dahilconfig/plugin/*/*/route.php) içinde tanımlanan rotaları yüklemek
İstek İşleme Akışı
- İstek URL'sinin public altındaki statik dosyaya karşılık gelip gelmediğini kontrol etmek. Evetse dosyayı döndürmek (isteği sonlandırmak). Hayırsa 2. adıma geçmek.
- URL'nin bir rotayla eşleşip eşleşmediğini belirlemek. Eşleşmezse 3. adıma; eşleşirse 4. adıma geçmek.
- Varsayılan rotanın devre dışı olup olmadığını kontrol etmek. Evetse 404 döndürmek (isteği sonlandırmak). Hayırsa 4. adıma geçmek.
- İsteğe karşılık gelen denetleyicinin middleware'lerini bulmak, sırayla middleware ön işlemlerini çalıştırmak (soğan modeli istek aşaması), denetleyici iş mantığını çalıştırmak, middleware son işlemlerini çalıştırmak (soğan modeli yanıt aşaması) ve isteği sonlandırmak. (Bkz. Middleware Soğan Modeli)