'/'路由正在工作,但'/ login'路由在Laravel中不工作
问题描述:
服务器的操作系统是Debian 8.6(jessie)...
index.php和.htaccess文件位于/ var/www/html和Laravel项目位于/ var/www
从index.php,我可以要求autloload.php和app.php文件,我可以浏览主页('/')。
但是,当我试图登录浏览(“/登录”)页面,这个错误是显示
'/'路由正在工作,但'/ login'路由在Laravel中不工作
所请求的网址/登录此服务器上找到。
在html文件夹中的.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>
什么可以在这里是什么问题?
我已经建立了在web.php文件中的登录路由..
答
您可以通过配置它的路由文件内实现/login
路径。像这样的东西。
Route::get('/login', function(){
return View::make('user-login');
});
如果你打算把另一个文件夹的登录,它可以做这样的事情。
Route::group(['prefix' => 'login'], function() {
Route::get('/', function(){
return View::make('portal/user-login');
});
Route::get('/forgot-password', function(){
return View::make('portal/user-forgot');
});
Route::get('/reset-password', function(){
return View::make('portal/user-reset');
});
Route::get('/dashboard', function(){
return View::make('portal/dashboard');
});
});
说明
Route:get()
将指定网址路径的功能。而return View::make('portal/user-login')
将是您的功能来查找您的file-blade.php
。
我把我的登录文件夹,并使用Route::group
,而不是所有的Route::get('login/')
我的所有代码。
希望得到这个帮助。
+0
登录路线已经建立......我很抱歉,我忘了提及.... –
你是否在你的“route.php”文件中设置了“/ login”路径? – iMarkDesigns
还要确保在您的VHOST设置中,您有该目录的“AllowOverride All”并重新加载Apache的设置。这是一个常见的问题。基本上你的mod重写可能不工作,如果由于某种原因被拒绝。另一个想法是检查你的服务器配置是否启用了mod_rewrite模块。一些Apache的安装没有它。由于Laravel未加载,因此您的routes.php文件不需要。你会得到一个通用的apache错误。也许检查你的错误日志文件以获取更多信息。默认是/var/log/apache2/errors.log。发布您的VHOST配置。 – Sk1ppeR
我可以看到'.htaccess'似乎很好。如果你仍然有问题,我的答案,是按照@ Sk1ppeR建议。 – iMarkDesigns