【问题标题】:Lumen 5.5 always getting 404 errorLumen 5.5 总是出现 404 错误
【发布时间】:2018-01-19 11:33:30
【问题描述】:

当我尝试输入 [mydomain.com] 时,我看到了默认版本页面:

Lumen (5.5.2) (Laravel Components 5.5.*)

当我尝试输入 [mydomain.com]/api/user 时收到 404 错误。

我的 web.php 如下所示:

$router->get('/', function () use ($router) {
    return $router->app->version();
});

$router->group(['prefix' => 'api'], function () use ($router) {
    // show
    $router->get('user', 'UserController@show');
});

我错过了什么?有人可以帮忙吗?

【问题讨论】:

    标签: php laravel apache lumen


    【解决方案1】:

    我仍然不能 100% 确定为什么会发生这种行为,因为在同一台服务器上,一个额外的 lumen 项目甚至在我完美修复之前就已经运行,但我找到了原因:

    问题取决于重写引擎的问题。很容易找出你是否有同样的问题。如果您在除 "/" 之外的每条路线上都得到 404,请尝试在您的 URL 中添加 "index.php"(例如:domain.com/index.php/user 而不是 domain.com/user)。如果现在可以使用该路由,您可以检查您的 apache 配置并进行更改

    <Directory /var/www/>
        Options Indexes FollowSymLinks
        AllowOverride None
        Require all granted
    </Directory>
    

    <Directory /var/www/>
        Options Indexes FollowSymLinks
        AllowOverride All
        Require all granted
    </Directory>
    

    此外,您可以通过将以下行添加到 lumen 项目的 \public 文件夹中的 .htaccess 来检查您的重写引擎是否正常工作:

    <IfModule mod_rewrite.c>
      Redirect 301 / https://google.com
      [...]
    

    如果您在请求任何路线时没有被重定向到谷歌,您需要检查您的配置。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-02-04
      • 2016-10-25
      • 2023-03-28
      • 1970-01-01
      • 2014-05-29
      • 1970-01-01
      • 1970-01-01
      • 2016-06-22
      相关资源
      最近更新 更多