一个客户要求我将旧的URL重定向到新的URL。只是,它给我的URL包含一个参数,因此无法使用.htaccess重定向。我测试了,但没有成功。
我想使用Laravel路由系统进行重定向。
我尝试过:
Route::get('places.php?p=1740', function () {
return redirect('new/url');
});
但是我有同样的问题。我有一个404错误,该页面不存在。我尝试了不带参数的方法,它有效。
我也尝试过:
Route::get('places.php/{p}', function ($p = '1740') {
return redirect('new/url');
});
但是它也不起作用。
我只需要一个解决方案即可将其带有参数的网址重定向到新网址。
谢谢!
答案 0 :(得分:0)
在laravel路由系统中,您无需指定.php
扩展名,如下所示:
Route::get('places/{p}', function ($p = '1740') {
return redirect('new/url');
});
答案 1 :(得分:0)
如果我理解正确,那么您有一个不在Laravel中构建的网站版本的旧网址,并且该网址可能已被搜索引擎索引,并且用户在访问该网址时输入404。您的目标是建立从https://example.com/places.php?p=1740
到https://example.com/new/url
的301重定向。
如果是这种情况,您应该可以通过将以下行添加到/public/.htaccess
来实现此目的:
Redirect 301 /places.php?p=1740 /new/url
或者您可以通过路由文件来做到这一点:
Route::redirect('/places.php?p=1740', '/new/url', 301);