我有一个过滤器,可以将用户重定向到https://网站的一部分。我已经在我的本地进行了测试,它可以正常工作,但是当我在实时网站上测试它时,它根本不起作用。
任何想法为什么会这样?我的本地正在使用在Windows 7上运行的XAMPP。我的服务器是CentOS 6。
这是我的过滤器......
Route::filter('secure', function()
{
if(!Request::secure())
{
return Redirect::secure(Request::path());
}
};
我的路线
Route::group(array('before' => 'secure', 'prefix' => '{regionSlug}/{parkSlug}'), function(){
// List of routes go here.
});
编辑:经过进一步研究后,我注意到它在我当地也没有正常工作。它工作的唯一原因是我的登录检查重定向并转移到网站的https部分。此路线组中的任何其他页面实际上都不起作用。我在每个get和post路由中取出了https,并设法修复它。
答案 0 :(得分:0)
顺便说一句 强制通过HTTPS提供路由
Route::get('foo', array('https', function()
{
return 'Must be over HTTPS';
}));
http://laravel.com/docs/routing#basic-routing
这可能是你的答案
Route::filter('secure', function()
{
if(!Request::secure())
{
return Redirect::secure(Request::path(URL::to('/')));
}
};