【问题标题】:Why isn't my Laravel route working? mod_rewrite enabled为什么我的 Laravel 路由不起作用?启用 mod_rewrite
【发布时间】:2014-08-31 05:45:20
【问题描述】:

我的 routes.php 中有简单的代码:

Route::get('/', function()
{
    return View::make('hello');
});


Route::get('/mypage', function()
{
    echo 'mypage';
});

访问 mysite.dev/ 将返回 hello 视图。但是,访问 mysite.dev/mypage 会给我一个 404。在我的 phpinfo();我显示 mod_rewrite 已启用(如此处所示:https://www.dropbox.com/s/u972n1rcdbsambg/Screenshot%202014-07-09%2022.27.04.png

知道为什么这不起作用吗?我正在使用 apache2 运行 Mac OS X Mavericks,使用 Laravel 4 运行 PHP。

【问题讨论】:

    标签: php apache mod-rewrite laravel laravel-4


    【解决方案1】:

    你有没有改变这个

    AllowOverride None

    AllowOverride All

    在你的apache2.conf?

    【讨论】:

    • 就是这样!我们又开始营业了!非常感谢您的帮助!
    【解决方案2】:

    听起来您可能缺少 .htaccess 文件 - 如果您在 OS X 上使用 finder 复制文件,则很容易错过此文件,因为默认情况下隐藏点文件。

    检查该文件是否在您的 /public 目录中 - https://github.com/laravel/laravel/blob/master/public/.htaccess

    【讨论】:

      【解决方案3】:

      你应该尝试返回 echo:

      Route::get('/mypage', function()
      {
          return echo 'mypage';
      });
      

      我希望这会有所帮助,干杯!

      【讨论】:

      • 您能否检查(假设您使用的是 apache)您的覆盖设置是否设置为全部。您可以在/etc/apache2/sites-enabled/*.conf中找到该文件夹​​
      • 返回echo?真的吗?
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-08-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多