背景
一个新项目,后端使用 PHP 实现,前端不做路由,提供一个模板,由后端路由控制。
Route::get('pages/{name}', [\App\Http\Controllers\ResourceController::class, 'getResourceVersion']); |
当访问路由以 pages/
开头的路径时,如 http://10.60.10.80/pages/login
,后端返回指定模板。出现一个问题,前端可能会修改浏览器地址,如:http://10.60.10.80/pages/projects/detail?id=1
。此时如果用户刷新页面,就会出现 404 问题。
所以当访问类似这种非二级路由的 URL 时,需隐藏式跳转到 pages/
二级路由,且不改变浏览器地址。可使用修改 Nginx 配置实现。