如何配置.htaccess指向main子文件夹下dist目录的index.html
配置.htaccess指向main/dist目录的index.html
直接替换成以下配置即可实现需求,同时保留api、admin目录的正常访问:
<IfModule mod_negotiation.c> Options -MultiViews </IfModule> <IfModule mod_rewrite.c> RewriteEngine On RewriteBase / # 访问main/dist/index.html本身时不进行重写 RewriteRule ^main/dist/index\.html$ - [L] # 仅当请求的文件或目录不存在时才执行重写 RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d # 将所有非真实文件/目录的请求转发到main/dist下的index.html RewriteRule . /main/dist/index.html [L] </IfModule>
关键修改点:
- 调整了最后一条重写规则的目标路径,从根目录的
/index.html改为/main/dist/index.html,确保SPA的路由请求都指向Vite编译后的入口文件 - 更新了跳过重写的规则,匹配
main/dist/index.html本身,避免出现循环重写的问题 - 保留了原有的文件/目录存在性检查,保证api、admin目录下的真实资源可以正常访问,不会被重写规则拦截
内容的提问来源于stack exchange,提问作者ATG
相关产品推荐
相关产品推荐

