Options -Indexes
DirectoryIndex index.php
RewriteEngine On

<IfModule mod_headers.c>
  Header always set X-Content-Type-Options "nosniff"
  Header always set X-Frame-Options "SAMEORIGIN"
  Header always set Referrer-Policy "strict-origin-when-cross-origin"
  Header always set Permissions-Policy "camera=(self), microphone=(), geolocation=(), payment=(self)"
  Header always set X-Permitted-Cross-Domain-Policies "none"
</IfModule>

# Block internal application, schema, documentation and source directories.
RewriteRule "(^|/)\.(?!well-known(?:/|$))" - [F,L]
RewriteRule ^(?:app|install|storage|docs|resources|main-file)/ - [F,L,NC]

<FilesMatch "(?i)(^config\.local\.php$|\.(sql|log|bak|orig|env|ini|md)$)">
  Require all denied
</FilesMatch>

# Static asset cache policy. HTML/PHP responses remain uncached when authenticated.
<IfModule mod_expires.c>
  ExpiresActive On
  ExpiresByType image/png "access plus 30 days"
  ExpiresByType image/jpeg "access plus 30 days"
  ExpiresByType image/webp "access plus 30 days"
  ExpiresByType image/svg+xml "access plus 30 days"
  ExpiresByType text/css "access plus 7 days"
  ExpiresByType application/javascript "access plus 7 days"
</IfModule>

RewriteRule ^$ public/index.php [L]
RewriteRule ^index-three\.html$ public/index-three.html [L]
RewriteRule ^product/([a-zA-Z0-9-]+)/?$ landing/product.php?slug=$1 [L,QSA]
RewriteRule ^shop/([a-zA-Z0-9-]+)/?$ landing/shop.php?slug=$1 [L,QSA]
RewriteRule ^brand/([a-zA-Z0-9-]+)/?$ landing/brand.php?slug=$1 [L,QSA]
RewriteRule ^member/([a-zA-Z0-9-]+)/?$ landing/member.php?ref=$1 [L,QSA]
