RewriteEngine On
RewriteBase /

# Serve existing files and directories as-is (including assets, images, CSS, JS)
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]

# Block direct access to PHP files except index.php
RewriteCond %{REQUEST_FILENAME} -f
RewriteCond %{REQUEST_FILENAME} \.php$
RewriteCond %{REQUEST_URI} !index\.php$
RewriteRule ^ - [F]

# Route everything else to index.php
RewriteRule ^ index.php [L,QSA]


