Laravel, how to redirect as 301 and 302

Justin picture Justin · Nov 13, 2013 · Viewed 55.9k times · Source

I cannot find info for redirecting as 301/302 in the Laravel docs.

In my routes.php file I use:

Route::get('foo', function(){ 
    return Redirect::to('/bar'); 
});

Is this a 301 or 302 by default? Is there a way to set it manually? Any idea why this would be omitted from the docs?

Answer

martinstoeckli picture martinstoeckli · Nov 13, 2013

Whenever you are unsure, you can have a look at Laravel's API documentation with the source code. The Redirector class defines a $status = 302 as default value.

You can define the status code with the to() method:

Route::get('foo', function(){ 
    return Redirect::to('/bar', 301); 
});