我有两条路线,一条是有效的,另一条没有,我无法弄明白为什么。
第一个工作,当我访问主页时,视图按预期显示。
Route::get('/', array('as' => 'homepage', function()
{
return View::make('home');
}));
第二个出现NotFoundHttpException
错误
Route::get('about', array('as' => 'aboutpage', function()
{
return View::make('about');
}));
我的其他Laravel项目使用此格式正常工作,主页工作正常。如果我访问localhost/laravel/public/index.php/about
它可以工作,但`localhost / laravel / public / about不会。
我正在使用WAMP和Apache模块rewrite_module。我已经多次重启了它。
答案 0 :(得分:0)
在项目的 .htaccess 文件中试用此代码: -
<IfModule mod_rewrite.c>
<IfModule mod_negotiation.c>
Options -MultiViews
</IfModule>
RewriteEngine On
# Redirect Trailing Slashes...
RewriteRule ^(.*)/$ /$1 [L,R=301]
# Handle Front Controller...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
</IfModule>
答案 1 :(得分:0)
我建议你这样做:
1-try return 'hello'
而不是页面:
Route::get('about', array('as' => 'aboutpage', function()
{
return 'hello';
}));
2 - 尝试执行此操作stackoverflow
答案 2 :(得分:0)
1)转到服务器的httpd.conf文件,并从下面的行中删除哈希
LoadModule rewrite_module modules/mod_rewrite.so
2)并在同一个httpd.conf文件中将AllowOverride none替换为AllowOverride All