Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/laravel/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
laravel使用http而不是https服务页面_Laravel_Laravel 4_Laravel Routing - Fatal编程技术网

laravel使用http而不是https服务页面

laravel使用http而不是https服务页面,laravel,laravel-4,laravel-routing,Laravel,Laravel 4,Laravel Routing,我有一个这样的过滤器 if( ! Request::secure()) { return Redirect::secure(Request::path()); } 这个过滤器使我的站点的每一条路由都通过https提供服务,这很好,除了一种情况。我有一个路由,它提供来自第三方服务器(可以嵌入)的内容。这些可嵌入的内容都是http 我只想使用http而不是https来服务这个路由。有没有办法,我可以用laravel做到这一点 谢谢您可以使用Request::url(

我有一个这样的过滤器

if( ! Request::secure())
    {
        return Redirect::secure(Request::path());
    }
这个过滤器使我的站点的每一条路由都通过https提供服务,这很好,除了一种情况。我有一个路由,它提供来自第三方服务器(可以嵌入)的内容。这些可嵌入的内容都是http

我只想使用http而不是https来服务这个路由。有没有办法,我可以用laravel做到这一点


谢谢

您可以使用
Request::url()


为了以不同方式处理管线,可以使用如下管线定义:

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仅用于这一条路由而不是整个网站。我再次道歉。我也这么做了。。但在my filters.php中,Route::currentRouteName为null。因此,我认为如果循环不被尊重!是 啊我所想的结果是真的。我最终尝试了指定的方法,但没有成功。很抱歉,您必须先将路由嵌入过滤器中。我已经更新了我的答案,并在这里做了一个快速成功的测试。不,对我不起作用。我现在得到一个methodnotfound异常,而协议仍然是httpsOk,它在我这边工作,但我可能有一个不同的设置。我再次编辑了我的答案,以关注您想要重定向的一条路线。但这实际上是一种获取外部内容的复杂方法。您可能只想在代码中使用
URL('http://example.com/bar)
。对于所有编辑,请不要反对更改。必须做出改变。因为页面不是正确的术语,而路由是。谢谢
Route::filter('test', function()
{
    if( Route::currentRouteName() == 'routeName')
    {
        return Redirect::to('http://example.com');
    }
});