流明路由不起作用
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')
输入参数时,应用程序开始工作。
这是我的路由代码:
$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')
输入参数时,应用程序开始工作。