I have many products without url key specified. Use web server rewrites is turned on. Every time I re-index all, a product's url will change. Why? What's the correct way to configure url rewrites? I don't want a product's url keep changing.
Found the answer: link
Empty url keys = duplicated url keys. What happens to duplicated url keys when reindexing?
The URL path generator checked the DUPLICATE’s URL key and founded that the respective URL path is occupied, and even its previous url path is occupied too. So, it simply created a new one, and then created a custom redirect from the old URL to the NEW one.
To fix this, I disabled creating permanent redirection and make sure not reindexing url rewrites.
And this helpful: link