Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/laravel/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何用我的包覆盖Laravel默认路由_Php_Laravel_Laravel 8 - Fatal编程技术网

Php 如何用我的包覆盖Laravel默认路由

Php 如何用我的包覆盖Laravel默认路由,php,laravel,laravel-8,Php,Laravel,Laravel 8,我已经开发了一个软件包,并将其发布给了packagist。我的包包含一个服务提供程序和一组路由,其中包括通过服务提供程序类“引导方法”加载的默认“/”路由 $this->loadRoutesFrom(__DIR__.'/routes.php'); 但是,每当我访问站点时,都会执行web.php中的默认路由,而不是包中的默认路由。另外,包中的其他路径似乎也可以正常工作。这种情况下有什么问题?您不能从Laravel软件包中重写。解决方案就是让包用户删除默认路由文件(web.php)中定义的路

我已经开发了一个软件包,并将其发布给了packagist。我的包包含一个服务提供程序和一组路由,其中包括通过服务提供程序类“引导方法”加载的默认“/”路由

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

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

您不能从Laravel软件包中重写。解决方案就是让包用户删除默认路由文件(web.php)中定义的路由


或者您可以从中间件(如此软件包)中重写,

我试图在服务提供商的引导功能中放置重定向,但即使这样也不起作用。不要在引导时放置重定向,而是在中间件上尝试