Magento – Request Path for Specified Store already exists during Indexing

magento-1.9PHP

In Magento 1.9, whenever I save any configurable product in the admin panel, all the product URLs goes to 404unless I doreindexing`.

In reindexing there are 8 processes, 7 of which works fine but the 8th one Vendor Product Url Rewrite get stuck with

Reindexing Required

And the error I get is

Request Path for Specified Store already exists during Indexing

This error also gets fixed once I empty the table "core URL rewrite" and reindex it.

Note: I have used the VES vendor extension which is creating "Vendor Product Url Rewrite" process for indexing.

Can Anyone help me with this situation?

Best Answer

In VES vendor extension, after reindexing, it creates its own request URL for that product. VES vendor extension added its key which is saved in

"Mage::getStoreConfig('vendors/vendor_page/url_key')"

i.e. in VES configuration (admin) -> Vendor Page -> URL Key and also it added vendor id for that specific product. So product URL becomes for e.g: http://local.example.com/shop/MV0011/test-product.html where "shop" is the URL key which is saved in VES configuration and "MV0011" is the vendor id of that product. If we hit such URL it will show 404.

Please find the below file path.

app/code/community/VES/VendorsPage/Model/Resource/Product.php

All the code is written in processUrlRewrite() function.

Also, one more problem related to that is if we make any changes in admin for a product and saved, it will again create above product URL which will also redirect to 404.

Below is the file path to prevent such creation of URL.

app/code/community/VES/VendorsPage/Model/Observer.php

Function catalog_product_save_after() is create such problem. So either you can comment out the event trigger in config.xml as

<!-- <catalog_product_save_after>
        <observers>
           <vendorspage>
               <class>vendorspage/observer</class>
               <method>catalog_product_save_after</method>
           </vendorspage>
        </observers>
</catalog_product_save_after> --> 

In app/code/community/VES/VendorsPage/etc/config.xml

Hope this will help you to solve this issue.

Thank you.