刚刚安装了Lumen并得到了NotFoundHttpException

时间:2016-04-05 21:00:32

标签: php laravel lumen lumen-5.2 lumen-routing

我正在寻找解决方案......它变得如此令人沮丧。 在Laravel彻底安装Lumen之后,我根本无法访问" /"路线。当我尝试时,它会抛出一个错误:

NotFoundHttpException in RoutesRequests.php line 443:

in RoutesRequests.php line 443
at Application->handleDispatcherResponse(array('0')) in RoutesRequests.php line 380
at Application->Laravel\Lumen\Concerns\{closure}() in RoutesRequests.php line 629
at Application->sendThroughPipeline(array(), object(Closure)) in RoutesRequests.php line 382
at Application->dispatch(null) in RoutesRequests.php line 327
at Application->run() in index.php line 28

4 个答案:

答案 0 :(得分:63)

知道了! ....

解决方案是在第28行更改public / index.php:

$app->run();

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

不知道为什么,也许你知道。

答案 1 :(得分:4)

通过更改

解决了问题
$app->run();

/public/index.php到

$request = Illuminate\Http\Request::capture();
$app->run($request);]

答案 2 :(得分:2)

我今天遇到了同样的问题。

我正在使用网址访问它 http://localhost/lumen.api/public/我认为这是错误的原因。

为了解决这个问题,这就是我所做的:

首先,我在Xampp上配置了一个新的VirtualHost条目,位于" C:\ xampp \ apache \ conf \ extra \ httpd-vhosts.conf"就我而言:

<VirtualHost *:80>
    DocumentRoot "C:/xampp/htdocs/lumen.api/public"
    ServerName lumen.api
    ServerAlias www.lumen.api
    ErrorLog "logs/lumen.api-error.log"
    CustomLog "logs/lumen.api-access.log" common
    <Directory "C:/xampp/htdocs/lumen.api/public">
        AllowOverride All
        Require all Granted
    </Directory>
</VirtualHost>

并在Xampp上重新启动Apache。

然后我编辑了我的hosts文件(c:\ windows \ system32 \ drivers \ etc \ hosts)以将新地址映射到我的localhost。

# localhost name resolution is handled within DNS itself.
#   127.0.0.1       localhost
#   ::1             localhost   
    127.0.0.1       lumen.api

我再次尝试使用新网址http://lumen.api,错误消失了。

答案 3 :(得分:0)

.htaccess文件可能已被删除或以某种方式从public文件夹中丢失。没有它,重写URL将无效。

请检查:https://github.com/laravel/lumen/blob/master/public/.htaccess