I am genuinely curious about why Moodle uses PHP and MySQL to render images, Javascript, CSS, and more. Every asset has .php in the URL.
Why doesn't Moodle allow Nginx/Apache to serve static resources directly? These systems are fast and efficient at delivering static content. Why would you reinvent the wheel?
I realize that Moodle caches the CSS, JS, and images, but adding assets to the database and calling PHP is completely unnecessary in the first place. Does any other large PHP project serve files like this? I've never seen this before.
Not only does this create extra unnecessary calls to PHP and MySQL, it also completely breaks CDNs like CloudFlare. CloudFlare can deliver static assets much faster and simpler than Moodle can.
If this is done for SCSS, there are other ways to render these assets ahead of time. If it's to authenticate permission to access a file, why would you need to do that for theme assets. I am so confused.
Is there a way to disable this functionality?
What am I missing?