Laravel - 使用Redirect :: route()添加尾部斜杠

时间:2014-07-14 01:21:29

标签: php laravel-4 laravel-3

我在Laravel使用Redirect::route()后尝试在URL的末尾添加斜杠。 我尝试了很多例子,但无法找到答案。

这是我到目前为止所做的:

routes.php

Route::get('/', function() {
    return Redirect::route('login');
});


Route::get('/login/', array(
    'as'    => 'login',
    'uses'  => 'Controller@login'
));

Controller.php

public function login()
{
    return 'Login page';
}

当我转到htdocs/laravel_project/时,我会被重定向到htdocs/laravel_project/login,但我希望它是htdocs/laravel_project/login/我想将该斜杠添加到URL的末尾。如果我在URL处手动输入斜杠,它就会按照我的要求进行操作。

2 个答案:

答案 0 :(得分:2)

您正在调用Redirect::route,其转换为:

  

重定向到相应路线的网址(with trailing slash trimmed)。

请注意,Laravel会自动删除生成的URL的尾部斜杠。

因此,如果没有进一步/深入调查,最快的方法是:

return Redirect::to(URL::route('login') . '/');

答案 1 :(得分:1)

这对我有用:

Redirect::to('example/page' . '\/', 301);

使用Redirect ::而不是Redirect :: route并将. '\/'添加到路径