我有一个像这样的过滤器
if( ! Request::secure())
{
return Redirect::secure(Request::path());
}
此过滤器使我的网站的每条路线都通过https提供,这很好,除了一个案例。我有一个路由,它提供来自第三方服务器(可以嵌入)的内容。这些可嵌入的内容都是http。
我想使用http而不是https来提供此路线。有没有办法,我可以用laravel做到这一点。
谢谢
答案 0 :(得分:0)
您可以使用Request::url()
if(( ! Request::secure()) && (Request::url() !== '/your/single/page'))
{
return Redirect::secure(Request::path());
}
答案 1 :(得分:0)
为了以不同方式处理路线,您可以使用如下路线定义:
Route::group(["before" => "test"], function()
{
Route::get('path/to/route', array('as' => 'routeName', 'uses' => 'routeController@doSomething'));
});
然后在filters.php
文件中添加:
Route::filter('test', function()
{
if( Route::currentRouteName() == 'routeName')
{
return Redirect::to('http://example.com');
}
});
有关命名路线的更多信息,请访问:http://laravel.com/docs/routing#named-routes