Add .htaccess SPA fallback for Apache/LiteSpeed (Hostinger)

Fixes a 404 when refreshing deep routes on Hostinger: serves index.html for
any request that isn't a real file/directory so the client-side router handles
the path. vercel.json doesn't apply on Apache hosts. Lives in public/ so Vite
bundles it into dist/.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
2026-06-02 19:01:48 -04:00
parent 7b54ddd40d
commit 7aac8f2863
+17
View File
@@ -0,0 +1,17 @@
# SPA fallback for Apache / LiteSpeed (Hostinger).
# Without this, refreshing a deep route (e.g. /dashboard/accounting) returns a
# 404 because no static file exists there. This serves index.html for any
# request that isn't a real file or directory, so the client-side router can
# handle the route.
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
# Serve existing files and directories as-is (assets, images, etc.).
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
# Everything else falls back to the SPA entry point.
RewriteRule ^ index.html [L]
</IfModule>