Laravel 5.4优化重定向301

时间:2018-03-22 10:00:49

标签: php laravel .htaccess redirect

我正在laravel 5.4中创建一些永久重定向,我想知道这是否是最好的方法,以及如何优化此代码。我在这个答案Optimize Redirect 301 for a multilingual site中看到了.htaccess中的一个例子,但是如何在路线中做同样的事情?什么是更好的,在路线 .htaccess 中进行?

我把它放在路线

Route::get('es/nosotros/quienes/quienes.php', function(){ return Redirect::to('quienes', 301); });
Route::get('en/nosotros/quienes/quienes.php', function(){ return Redirect::to('quienes', 301); });
Route::get('pt/nosotros/quienes/quienes.php', function(){ return Redirect::to('quienes', 301); });

另一个问题是我必须重定向大约5,000个网址。作为最终结果,我将获得一个包含5,000个旧网址和5,000个新网址的文件。我还将它包含在路线文件中吗?在.htaccess?感谢。

1 个答案:

答案 0 :(得分:1)

为什么不使用占位符?

Route::get('{lang}/nosotros/quienes/quienes.php', function ($language) {
    return Redirect::to('quienes', 301)->with('language', $language);
});

routes.htaccess之间的区别在于速度:第二个不会将信息传递给应用程序,重定向答案将直接从Web服务器(Apache)接收。服务器会谢谢你!