How do you handle URL redirects?
Every legacy M1 URL gets a 301 redirect to its M2 equivalent. Three layers:
- (1) Slug-match auto-mapping, Magento’s URL rewrite migration handles 80-90% of product, category, and CMS URLs automatically (slugs unchanged).
- (2) Manual mapping, for URLs that changed (e.g. M1 .html suffix dropped, custom routes restructured), we generate a CSV of old→new and load it into M2’s url_rewrite table.
- (3) Web-server fallback, nginx / Apache rules catch anything missed at the URL-rewrite level (e.g. legacy .php paths).
Pre/post Screaming Frog crawls compare every URL, any 404s on legacy URLs get patched within 24 hours of cutover. Zero permanent 404s guarantee.