Laravel在现有控制器上返回404

时间:2015-06-07 15:28:11

标签: php laravel

我刚开始使用laravel并且我喜欢它,但是我遇到了一个问题,

routes.php文件:

Route::get('/', 'SongsController@index'); => this works perfectly
Route::get('/index', 'SongsController@index'); => this fails and returns 404
Route::get('index', 'SongsController@index'); => this also returns 404

1 个答案:

答案 0 :(得分:0)

这里需要注意几点:

根据经验,大多数通用匹配应显示在底部,因为在更具体的路线之前不会触发:

Route::get('/index', 'SongsController@index');
Route::get('/', 'SongsController@index');

接下来,确保您可以通过在路线前附加index.php来访问路线。

http://my.site.tld/index.php/index

如果结果解决但没有index.php,请做两件事:

  • 确保已启用mod_headers。

    • sudo a2enmod header - ubuntu
    • 修改httpd.conf并检查mod_headers.so(确保未注释掉) - RHEL / CentOS
  • 确保已在虚拟主机的<Directory>块中为“my.site.tld”配置了“AllowOverride All”

这应确保路线能够解决。