如何将旧网址重定向到新网址。
旧网址:
http://www.example.com/main.php?id=111
新网址:
http://www.example.com/n/111
我的解决方案是:在routes.php中
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);
}
但这段代码不起作用。请帮助。
答案 0 :(得分:2)
您可以创建一条路线来捕获不在您的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', '.*');