Here’s the deal: It appears that this is what happens:
if url-fails
apply permalink normalization
check url against permalinks
...
What I am proposing is
if url-fails
apply permalink normalization
check url against permalinks
check url against discourse urls
For the bulk of these Ning URLs, replacing /forum/topics/ with /t/ will make the URLs resolve (at least when Discourse’s title-to-slug code matches Ning’s–Ning doesn’t provide the slugs it generates). Right now, it looks like I’ll need to do something like create permalinks at /forum/topics/slug.
Is this another case where a customer wants a Discourse forum at the exact same URL as the previous software forum? These are technically much more complicated.
I strongly recommend not letting customers do that, unless they pay extra.
So you’d put discourse at forum.domain.com and have www.domain.com do those redirects of /forum/topics/(.*) to forum.domain.com/t/\1? He doesn’t necessarily care where the forum lives, just that his thousands of organic search hits don’t become 404s.
Yes, exactly. Having this at another subdomain makes it easier in our experience. You still need a lookup table from old URL to new URL in any case but plenty of instructions on how to do this using nginx, apache, etc out there.
That basically takes you out of the realm of “Discourse specific” to “anyone who has ever run a website on any software ever has run into this and solved it before” territory. It makes it into a general problem rather than a specific one and thus… easier to solve, yes?
Perhaps. The other side is that it’s easier to have one web server in place than more than one. And in this particular case, where the concern is search engine traffic rather than links from other places, it won’t matter at all after Google re-indexes the new site.
Right. He doesn’t think that there are many such links for his community, though. It’s just search engines that he cares about. But perhaps the redirect is simple enough that I can configure SquareSpace to do the redirects with just a few rules.