首页 > 解决方案 > 如何用我的包覆盖 Laravel 默认路由

问题描述

我开发了一个包并将其发布到packagist。我的包包含一个服务提供者和一组路由,包括通过服务提供者类的引导方法加载的默认“/”路由。

$this->loadRoutesFrom(__DIR__.'/routes.php');

但是,每当我访问该站点时,都会执行来自 web.php 的默认路由,而不是来自包的默认路由。包裹中的其他路线似乎也可以正常工作。在这种情况下有什么问题?

标签: phplaravellaravel-8

解决方案


你不能从 Laravel 包中覆盖。解决方案只是要求您的包用户删除您在默认路由文件(web.php)中定义的路由。

或者你可以从像这个包https://github.com/awjudd/maintenance-mode这样的中间件覆盖,


推荐阅读