Laravel本地运行项目首页正常 访问内页提示Object not found求助
Laravel 首页正常、内页404问题排查方案
1. 修正站点根目录配置
- 必须将项目的
public目录设置为Web服务的站点根目录,不得直接使用项目根目录作为根路径,否则会导致路由解析失败同时暴露敏感文件。
2. 配置伪静态重写规则
Laravel所有路由都需要通过public/index.php入口文件处理,需对应配置Web服务的重写规则:
Apache 环境
- 确认
public目录下存在官方默认的.htaccess文件,文件丢失可重新拷贝同版本Laravel的默认.htaccess文件 - 开启Apache的
mod_rewrite模块,同时在站点配置中将AllowOverride参数设置为All,确保.htaccess规则可生效
Nginx 环境
- 在站点server配置块中添加如下规则:
location / { try_files $uri $uri/ /index.php?$query_string; }
- 修改配置后执行
nginx -s reload重启服务生效
3. 清除路由缓存
如果是生产环境执行过路由缓存操作,路由更新后不会自动生效,执行命令清除缓存即可:
php artisan route:clear
4. 校验配置一致性
- 核对
.env文件中APP_URL参数与当前访问的站点域名、端口完全一致 - 执行
php artisan route:list命令查看已注册路由,确认你访问的内页URI、请求方式与注册的路由规则匹配
内容的提问来源于stack exchange,提问作者Md. Shahinur Islam
相关产品推荐
相关产品推荐

