Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/298.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 在Symfony 2中使用URL复制进行管理_Php_Symfony_Redirect_Duplicate Removal - Fatal编程技术网

Php 在Symfony 2中使用URL复制进行管理

Php 在Symfony 2中使用URL复制进行管理,php,symfony,redirect,duplicate-removal,Php,Symfony,Redirect,Duplicate Removal,我有一个房地产网站,用Symfony 2编码 每天早上,我们都会自动从房地产软件导入属性,并更新数据库 URL将用属性标题和ID重写,如: .../%title%-%ID% 有时,房地产代理会更改房产的名称,因此URL也会更改 它在Google中创建了一个重复的内容,因为同一个页面现在有两个URL 我想修复它,自动添加一个从旧URL到新URL的重定向301 在Symfony 2中我如何才能做到这一点 谢谢你的帮助 马修谢谢你的评论。 我正在使用Mat Bios,您帮助我们找到解决方案 我们找

我有一个房地产网站,用Symfony 2编码

每天早上,我们都会自动从房地产软件导入属性,并更新数据库

URL将用属性标题和ID重写,如:

.../%title%-%ID% 
有时,房地产代理会更改房产的名称,因此URL也会更改

它在Google中创建了一个重复的内容,因为同一个页面现在有两个URL

我想修复它,自动添加一个从旧URL到新URL的重定向301

在Symfony 2中我如何才能做到这一点

谢谢你的帮助


马修

谢谢你的评论。 我正在使用Mat Bios,您帮助我们找到解决方案

我们找到了一种检测旧url的方法,然后在控制器中进行重定向301

return$this->redirect($currentUrl,301)


谢谢

考虑添加通用Url。通用Url将是谷歌知道的。任何带有标题的Url都将路由到通用Url

创建一个规则,该规则捕获具有模式
//myApp/%title%-%ID%
的所有URL,并导致重定向
//myApp/property/%ID%

您可以在routing.yml中完成所有这些操作

GenericRoute:   pattern: /myapp/properties/{propertyId}   
    defaults:
      _controller: Bundle:Controller:action

TitleRoute:   
    pattern: /myapp/{title}/{propertyId}   
    defaults:
      _controller: FrameworkBundle:Redirect:redirect
      route: GenericRoute
      permanent: true 

您在检测URL是否旧或发送301响应时有问题吗?是的,我的问题是检测URL是否已更改。ID是否为常量?你不能用它来检测名字的变化吗?你能添加路由代码,更新数据库标题和方案的代码吗,该地产有一个unic ID。例如:第一个URL是:…/vente-ferme-bressane entierement-renove-aproximite de belleville CH+28416,当代理更改该地产的所有权时:…/vente-ferme-bressane-entierement-renove-4-km-de-chatillon-sur-chalaronne-CH+28416(抱歉是法语,但你可以在URL末尾看到ID)有什么建议吗?感谢你的帮助Brig:)我们需要在URL中保留属性标题,belga的解决方案有效。