It's exactly the same as with static sites with one exception: you want to make sure you have search engine friendly URLs. Don't put session IDs in your URLs. Try to keep your query string short if you can. Even better, use mod_rewrite or something similar to make the query string look like a regular directory structure (e.g. domain.com/directory/directory2/page.html).
stymie is correct.
I really do not see why people seem to think there is any real differene between "static" and "Dynamic"... you are still putting content on the internet, still using code and tags and content etc.
Theo nly differene is you are not manually building each page - it does that automatically.
If anything, a Dynamic site should be easier, asyou can figure you're pattern, put in the tags... and then add the content.
The tags are built using your content every time... no editing each page for optimisation etc.
I agree with autocrat although I have to say that I run two online craft supply stores, one is a cubecart database driven system and the other is just a purly static html site and I have to say that the static html site performs much better than the cubecart one with the search engines even though I use the mod rewrite and every page has a unique title, meta tags etc.