you say "The SonataSeoBundle does a good job on handling that stuff." but you speak about canonical url above, and the redirect situation seems not to be handled by sonata - the cmf listener does that.