Yup - that's what I'm thinking of. You're right - prone to evil. My uses are less nefarious - I just want the user to be able to bookmark a state of the SWF and return there later.

I know current deep-linking vogue uses named anchors - I was hoping to avoid that approach, because you're still working with the same base HTML page. I want to deliver a different HTML page for each page/state IF the user (Google) doesn't have Javascript/Flash.


What I've worked out is pretty slick. I have a single PHP page (index.php) which, depending on the query string, will load the relevant state (title, body text, subnav) from an XML file. So "index.php?page=about" sets the page title to About and loads the XML body text for the About page. The SWF for the site uses the same source XML for its body text for each state - so no worries about cloaking, and no need to enter the content twice.

Google can crawl and index the whole HTML version of the site, and users following Google links to particular pages will cause the PHP file (if they have Javascript/Flash) to pass a flashvar to SWFObject so the Flash file loads the relevant (e.g. "About") state.

The only problem is, if the user comes in on "index.php?page=about", when they start clicking around the SWF, the url will remain "page=about". Not a deal-killer, but not perfect - it'd be nice if it changed to the currently chosen state.


I think you can do what you fear using SWFAddress - can't you? Or Javascript anyway - I think you can rewrite the displayed URL. You can certainly rewrite the part after the domain.