如何将旧url重定向到新url。
我的解决方案是:在routes.php旧url:
http://www.example.com/main.php?id=111
new url:
http://www.example.com/n/111
Route::get('/main.php?id={id}', array('uses' => 'App'Controllers'Front'PageController@oldToNew'));
在行动:public function oldToNew($id)
{
return Redirect::to('http://www.example.com/n/'.$id);
}
,但这段代码不起作用。请帮助。
你可以创建一个路由来捕获所有不在你的routes.php中的路由。它必须在你的routes.php文件的底部。
这里可以检查id是否存在以及uri中是否包含main.php。
Route::get('{uri}', function($uri)
{
$id = Input::get('id');
if(preg_match('/main.php/i', $uri) && isset($id)){
return Redirect::to('http://www.example.com/n/'.$id);
}else{
App::abort(404);
}
})->where('all', '.*');