我们遇到了一个问题,即我们正在处理的Magento商店中存在不需要的永久重定向,我希望看到我们如何从这些重定向的空白板开始。我们不需要任何,因为它是一个开发的网站,我们也不希望在这个域内重定向任何东西。商店不在线,以下是发生的事情。
我们不知道System - >下的URL Rewrite Management选项。配置 - >目录 - >搜索引擎优化,因此“创建永久重定向...”标记为“是”。某些产品是通过Feed上传的,但上传的方式不正确。所以,我们重新上传它们以过度写。结果是“白衬衫A”的URL密钥在管理或导出的数据Feed中为“white-shirt-a.html”,但产生该产品的实际链接是“white-shirt-a-1”。 HTML“。如果我们去“white-shirt-a.html”,它会给我们一个404 Not Found。
我们如何清除所有这些永久重定向?我们已尝试在目录 - >下禁用或删除这些特定请求路径和目标路径条目。 URL Rewrite Mangement,但它们没有任何效果。
答案 0 :(得分:10)
如果您的商店尚未投放,请按照以下步骤操作:
从数据库清空/截断core_url_rewrite
表。
禁用Magento后端的永久重定向。
Reindex目录网址重写,您的所有网址都将被更正。
答案 1 :(得分:1)
为了删除所有永久重定向,您可以:
1)执行直接查询(不推荐):
DELETE FROM core_url_rewrite WHERE options IS NOT NULL AND is_system = 0
2)更温和地做:
$write = Mage::getSingleton('core/resource')->getConnection('core_write');
try {
$write->beginTransaction();
$table = Mage::getSingleton('core/resource')->getTableName('core/url_rewrite');
$count = $write->exec('DELETE FROM ' . $table . ' WHERE options IS NOT NULL AND is_system = 0');
$write->commit();
$this->_getSession()->addSuccess($this->__('Successfully removed %s redirects.', $count));
} catch(Exception $e) {
$write->rollback();
$this->_getSession()->addException($this->__("An error occurred while clearing url redirects: %s", $e->getMessage()));
}
3)或者您可以安装Custom Product Urls扩展名,这样您就可以清除管理面板中的所有永久重定向。
答案 2 :(得分:0)
我不保证这是安全的。但到目前为止似乎已经奏效了。
我已经运行了这个查询:
" DELETE * FROM core_url_rewrite
WHERE is_system
!= 1";
该查询删除了所有自定义重写规则,其中我们有500,000个。大多数是在有人关闭" .html"搜索引擎优化中的扩展而不更改"更改网址时创建重写规则"到"否"。