Options -Indexes
RewriteEngine On

# Block direct access to sensitive folders
RewriteRule ^config/ - [F,L]
RewriteRule ^includes/ - [F,L]
RewriteRule ^database/ - [F,L]
RewriteRule ^controllers/ - [F,L]
RewriteRule ^models/ - [F,L]

# Redirect root requests to public/
RewriteCond %{REQUEST_URI} !^/public/
RewriteCond %{REQUEST_URI} !^/views/
RewriteCond %{REQUEST_URI} !^/assets/
RewriteCond %{REQUEST_URI} !^/uploads/
RewriteCond %{REQUEST_URI} !^/install/
RewriteRule ^$ public/index.php [L]

<FilesMatch "\.(sql|md|log|env)$">
  Require all denied
</FilesMatch>
