We're replacing a static web-site with a Django app. All the uri's will change. The current web-site has a substantial presence on the search engine rankings and we don't want to mess that up too much. Is it simply a case of setting up 301 redirects to the new uri's, or is there something more subtle we need to do to ensure the search engines understand what's happened.
301's should in fact cover it.
Searchengines are generally pretty good at this :)
Normally when you change your site you will get a hit on your search result page rankings which will last for about 2-4 weeks.
Apex Internet has a good article on setting up the 301 redirects on both Apache, IIS, and other variants. Take a look here.
Steven Hargrove also has a good article on it here with a follow up here.
In addition, Webmaster World has a thread on the impact of the 301's updating in Google, Yahoo and others as well as tips and a little more advice. Take a look at that here.
Lastly here is a article from Google Groups on Dynamic vs. Static URL's that touches on changing structure and how it maps.
I was hoping I would have more information for you and a way to use the robots.txt file to help keep the rankings up when you start the migration. I'll keep looking and see what I can find for you. Cheers and good luck!