重新索引后,限制Magento在URL末尾递增数字
I have Multi website,Multi store Magento with many of the products with duplicate url_key's. For duplicate url_key every re-indexing operations Magento unnecessarily keeps adding new url rewrite data by incrementing numeric at the end of the url and defines these new url rewrite rule of type 'custom'. My core_url_rewrite table in mysql is already grown beyond 2GB in one month only then imagine what could be table size after one year. I need to restrict Magento incrementing numeric at the end of the URL somehow programmatically. I went through this discussion http://www.magentocommerce.com/boards/viewthread/416476/ but markf with few others do not find snowcountry's fix stable. Can you help me here with best solution? I will welcome entirely different approach as well.
我有多个网站,多商店Magento,许多产品都有重复的url_key。 对于重复的url_key,每次重新索引操作Magento都会通过在url的末尾递增数字来不必要地继续添加新的url重写数据,并定义这些类型为“custom”的新url重写规则。 我在mysql中的core_url_rewrite表已经在一个月内增长到超过2GB,然后想象一年之后可能是表大小。 我需要以某种方式以编程方式限制Magento在URL末尾递增数字。 我经历了 http://www.magentocommerce.com/boards/viewthread/416476/ 但 markf em>与其他几个人没有找到 snowcountry em>的修复稳定。 你能帮我解决这个问题吗? 我也欢迎完全不同的方法。 p> div>
Yes such thing happen if you have duplicate url's. Best way is never have duplicate URL's in your system. Duplicates URL's can be given a proper suffix to make it unique. Once you have no URL's remaining in your system you can truncate core_url_rewrite table and re-index Catalog URL Rewrites.
But in your case you can not afford to loose any Old Url then just correct you duplicate url's that you dont have any duplicate url's then reindex and everything will start working fine witout any numeric at the end. In this way neither you lost any old url they are still there pointing to new url's nor in further reindexing new url will be generated.
If you have not defined any of the URL rewrites manually.
Then truncate all flat catalog category and product tables. follw this by truncating core_url_rewrite table.
Then do reindexAll.
At this will reduce your core url number of rows.