Web Server
15. The web server sends back what the app server gave it.
5. The web server gets the request, and finds out if it can send a file or call other pieces of software.
Files are sent back directly.
The web server could find a file to send directly.
Files
If there is no clever stuff involved, and you asked for a file
like a picture (which is not supposed to change often), the server
can send it back very quickly, and avoid calling 'clever' code.
6. Some routing rules (either on the web server, app server or both) are used to send the request where it's appropriate.
Application
14. Sends the HTML back. If you didn't render a view, you should return raw data, status codes, or redirections.
7. This is where the code is involved!
13. the view is rendered with the data that came back.
12. The controller can also apply application rules once it gets the data from the model.
8. The app server calls an action to handle the request.
11. The model can still adapt and apply business rules once it gets the data.
9. The model answers to each question the controller asks him.