我已经将Lumen项目升级到5.5版本,并且路由似乎已损坏。 我输入的每个URL都返回默认的'/'路由,定义为:
$router->get('/', function () use ($router) {
return $router->app->version();
});
尝试击中 / example 时,流明不会触发404错误,它只会返回我的'/'路线的内容。
这不是网络服务器配置问题:,因为它在升级之前运行良好,并且对于运行从5.2到5.6版本的其他流明项目仍然可以正常工作。
是的,/ routes / web.php在/config/app.php中定义为路由文件
经过几次测试,结果表明请求uri在流明中始终显示为“ /”。 当我在第156行的“ /vendor/laravel/lumen-framework/src/Concerns/RoutesRequests.php”中打印 $ method 和 $ pathInfo 时,它为我< / p>
string(3) "GET" # for $method
string(1) "/" # for $pathInfo
所以我的问题是,需要在请求类上执行的文档中是否缺少我所做的任何更改?为什么会发生这种情况?我是否需要从头开始创建项目并仅移动控制器?
谢谢您的时间!
更新:根据Styx的要求,这是Web服务器配置,Im'对在不同版本上运行的许多Lumen项目使用相同的配置,并且路由对它们都不是问题,除了我们正在谈论的那个。
对于包含所有项目的目录:
<Directory "C:\Users\[user]\Desktop\projets">
AllowOverride all
Options Indexes FollowSymLinks ExecCGI
Order deny,allow
Allow from all
</Directory>
vhost的附加指令:
<VirtualHost *:80>
DocumentRoot "C:\Users\pa.thiout\Desktop\projets\projet\public"
ServerName back
</VirtualHost>
更新:我决定拉出另一个新的5.7 Lumen项目,然后重新安装composer软件包并移动代码。效果很好。