<IfModule mod_rewrite.c>
    RewriteEngine On

    # Redirect root requests to the public/ subdirectory internally
    RewriteRule ^$ public/ [L]
    RewriteRule ((?s).*) public/$1 [L]
</IfModule>

# Security: Deny direct web access to sensitive config and metadata files
<Files .env>
    Order allow,deny
    Deny from all
</Files>
<Files composer.json>
    Order allow,deny
    Deny from all
</Files>
<Files composer.lock>
    Order allow,deny
    Deny from all
</Files>
<Files package.json>
    Order allow,deny
    Deny from all
</Files>
<Files package-lock.json>
    Order allow,deny
    Deny from all
</Files>
<Files phpunit.xml>
    Order allow,deny
    Deny from all
</Files>
<Files artisan>
    Order allow,deny
    Deny from all
</Files>

# Block access to git config, env examples, and other hidden dotfiles
RedirectMatch 404 /\.(?!well-known/)
