# ==============================================================================
# CORPINTECH MASTER FRAMEWORK HTACCESS
# ==============================================================================
# 1. CORE ENGINE
RewriteEngine On
RewriteBase /
# 2. FAST-TRACK STATIC ASSETS (Crucial for your 0.6s JS fix)
# This ensures images, css, and js are served instantly without PHP intervention
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
# 3. GLOBAL ROUTING (Off-branch Logic)
# Redirect /page to /page/ for SEO consistency
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} !(\.[a-zA-Z0-9]{1,5}|/)$
RewriteRule ^(.*)$ $1/ [R=301,L]
# 4. API & SYSTEM REWRITES (Off-branch Logic)
# Maps tracking requests and API calls
RewriteRule ^api/(.*)$ sys/api/index.php [L,QSA]
RewriteRule ^gnotr/(.*)$ resource/tracking.js [L,QSA]
# 5. DYNAMIC PAGE ROUTING (The Merge)
# Property/Product IDs (CRM focus)
RewriteRule ^property/([^/]+)/$ index.php?page=property&prop_id=$1 [L,QSA]
# Standard Pages
RewriteRule ^([^/]+)/$ index.php?page=$1 [L,QSA]
# 6. ERROR HANDLING
ErrorDocument 404 /index.php?page=404
# 7. PERFORMANCE & SECURITY (Main Branch Logic)
AddOutputFilterByType DEFLATE text/html text/plain text/css application/javascript application/json
ExpiresActive On
ExpiresDefault "access plus 1 month"
ExpiresByType image/x-icon "access plus 1 year"
Header set X-Content-Type-Options "nosniff"
Header set X-Frame-Options "DENY"
# Prevent directory listing
Options -Indexes