流明路由不起作用

Lumen routing doesn't work

这是我的路由代码:

$app->get('/foo', function () {
    return 'Hello World';
});
$app->get('/', function(){
    return 'asd';
});

问题是我总是在页面上看到 "asd",即使我访问了一些不存在的随机路径。因此,如果我访问 localhost/sadgasgasdgsa,我将在页面上看到 'asd'。当我访问 localhost/foo 时,我也得到 'asd','Hello World' 的瞬间。知道我的问题是什么吗?

注意: 这似乎是同一个问题: Lumen routes not working other than '/' route 但是没有人回答这个问题。我的服务器确认简单的 WAMP,php7,apache2 和 mysql。在寻找解决方案时,我添加了以下 .htaccess 文件:

Options +FollowSymLinks
RewriteEngine On

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]

但是它不起作用 编辑 对于那些带着搜索引擎来到这里的人,我已经降级了 lumen 的版本,它开始工作了。

从 Lumen 5.3 升级到 5.4 并遇到同样的问题,只有“/”路由有效。

深入挖掘发现我已经破解了 Lumen 5.2 中早期问题的解决方案的代码,该问题已根据这个流行的 .

修复

问题出在 bootstrap/index.php:

$app->run($app->make('request'))

输入参数 $app->make('request') 作为 Laravel 5.2 问题的修复而添加,生成了一个缺少实际请求数据的空请求对象。这就是默认 '/' 启动的原因,请求对象没有任何路径信息。

我查看了 github 中的原始 public/index.php 文件, $app->run() 没有任何参数。当我删除 $app->make('request') 输入参数时,应用程序开始工作。