Ist mein Verfahren kompliziert
Zu kompliziert.
Du kannst Deine redirect.php auch als ErrorDocument 404 registrieren und dann die URL untersuchen. Auf die neue Seite weiterleiten, sonst eine Hilfestellung (Suche, eventuell schon mit Ergebnissen) anbieten.
und best practice
Kommt darauf an, was Du noch falsch oder richtig machst. Aus SEO-Sicht sind korrekte Header (301, 302, 303, 404) wichtig.