FastAdmin 基于 ThinkPHP,默认采用 URL 路由模式(如 /index.php/module/controller/action),且前端资源通常部署在公共目录(如 public/)下。Uniapp 的历史模式需要将所有前端路由请求重定向到 index.html,而 FastAdmin 的后端路由可能与之冲突。

UNIAPP项目有两种路由模式,一种是哈希模式和历史模式,如果选用历史模式,如果选用哈希模式,#后面的参数会被服务器忽略掉,可以正常使用没有问题,但是选用history模式,则需要通过伪静态配置:

例如,我这里的项目放在public/web文件夹下面,伪静态的配置追加:

 # 前端历史模式适配:匹配所有路径,优先返回前端页面(需根据实际路径调整)
  if (!-e $request_filename) {
    # 假设前端入口文件为 /public/web/index.html
    rewrite ^/web/(.*)$ /web/index.html last;
  }

 

这样就可以正常访问history模式的H5页面了 

更多推荐