2017-01-16 195 views
0

服务器的操作系统是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文件中的登录路由..

+0

你是否在你的“route.php”文件中设置了“/ login”路径? – iMarkDesigns

+0

还要确保在您的VHOST设置中,您有该目录的“AllowOverride All”并重新加载Apache的设置。这是一个常见的问题。基本上你的mod重写可能不工作,如果由于某种原因被拒绝。另一个想法是检查你的服务器配置是否启用了mod_rewrite模块。一些Apache的安装没有它。由于Laravel未加载,因此您的routes.php文件不需要。你会得到一个通用的apache错误。也许检查你的错误日志文件以获取更多信息。默认是/var/log/apache2/errors.log。发布您的VHOST配置。 – Sk1ppeR

+0

我可以看到'.htaccess'似乎很好。如果你仍然有问题,我的答案,是按照@ Sk1ppeR建议。 – iMarkDesigns

回答

0

您可以通过配置它的路由文件内实现/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

登录路线已经建立......我很抱歉,我忘了提及.... –