Laravel / Lumen 更新到 5.5,路由损坏
Laravel / Lumen update to 5.5, routing broken
我已将我的 Lumen 项目升级到 5.5 版本,但路由似乎已损坏。
我输入的每个 URL 都会返回默认的“/”路由,定义为:
$router->get('/', function () use ($router) {
return $router->app->version();
});
当尝试点击 /example lumen 时不会触发 404 错误,它只是 returns 我的 '/'路线。
这不是 Web 服务器配置问题: 因为它在升级之前工作正常,并且对于其他 lumen 项目 运行 版本仍然工作正常从 5.2 到 5.6。
是的,/routes/web.php定义在/config/app.php作为路由文件
经过几次测试,发现请求uri在Lumen中总是显示为“/”。
当我从第 156 行的“/vendor/laravel/lumen-framework/src/Concerns/RoutesRequests.php”打印 $method 和 $pathInfo 时,它给了我
string(3) "GET" # for $method
string(1) "/" # for $pathInfo
所以我的问题是,我是否遗漏了需要根据要求执行的文档中的任何更改 class?为什么会这样?我是否需要从头开始创建一个项目并移动我的控制器?
感谢您的宝贵时间!
更新: 根据 Styx 的要求,这里是网络服务器配置,我对许多 Lumen 项目使用相同的配置 运行 在各种版本和路由上他们中的任何一个都不是问题,除了我们正在谈论的那个。
对于包含所有项目的目录:
<Directory "C:\Users\[user]\Desktop\projets">
AllowOverride all
Options Indexes FollowSymLinks ExecCGI
Order deny,allow
Allow from all
</Directory>
虚拟主机的附加指令:
<VirtualHost *:80>
DocumentRoot "C:\Users\pa.thiout\Desktop\projets\projet\public"
ServerName back
</VirtualHost>
更新: 我决定拉另一个新的 5.7 Lumen 项目并重新安装作曲家包并移动代码。工作正常。
我知道这个主题可能有点陈旧,但万一有人遇到这个错误,这可能会有所帮助。
问题出在public/index.php,应该只有:
$app->run();
我在安装新的 lumen 安装 (5.5) 并像在 Git 的帮助下将所有东西替换回来后发现了这一点。我在 public/index 上发现了这个巨大的差异。php。讽刺的是,一小段代码却能让你轻松一上午。
左边是我以前的不工作代码,右边是有效的代码。
我已将我的 Lumen 项目升级到 5.5 版本,但路由似乎已损坏。 我输入的每个 URL 都会返回默认的“/”路由,定义为:
$router->get('/', function () use ($router) {
return $router->app->version();
});
当尝试点击 /example lumen 时不会触发 404 错误,它只是 returns 我的 '/'路线。
这不是 Web 服务器配置问题: 因为它在升级之前工作正常,并且对于其他 lumen 项目 运行 版本仍然工作正常从 5.2 到 5.6。
是的,/routes/web.php定义在/config/app.php作为路由文件
经过几次测试,发现请求uri在Lumen中总是显示为“/”。 当我从第 156 行的“/vendor/laravel/lumen-framework/src/Concerns/RoutesRequests.php”打印 $method 和 $pathInfo 时,它给了我
string(3) "GET" # for $method
string(1) "/" # for $pathInfo
所以我的问题是,我是否遗漏了需要根据要求执行的文档中的任何更改 class?为什么会这样?我是否需要从头开始创建一个项目并移动我的控制器?
感谢您的宝贵时间!
更新: 根据 Styx 的要求,这里是网络服务器配置,我对许多 Lumen 项目使用相同的配置 运行 在各种版本和路由上他们中的任何一个都不是问题,除了我们正在谈论的那个。
对于包含所有项目的目录:
<Directory "C:\Users\[user]\Desktop\projets">
AllowOverride all
Options Indexes FollowSymLinks ExecCGI
Order deny,allow
Allow from all
</Directory>
虚拟主机的附加指令:
<VirtualHost *:80>
DocumentRoot "C:\Users\pa.thiout\Desktop\projets\projet\public"
ServerName back
</VirtualHost>
更新: 我决定拉另一个新的 5.7 Lumen 项目并重新安装作曲家包并移动代码。工作正常。
我知道这个主题可能有点陈旧,但万一有人遇到这个错误,这可能会有所帮助。
问题出在public/index.php,应该只有:
$app->run();
我在安装新的 lumen 安装 (5.5) 并像在 Git 的帮助下将所有东西替换回来后发现了这一点。我在 public/index 上发现了这个巨大的差异。php。讽刺的是,一小段代码却能让你轻松一上午。
左边是我以前的不工作代码,右边是有效的代码。