Just to rule out a few things…
Made a clean template with nothing by the image rotator, (i.e. got rid of google analytics etc), still the same.
I made an XML file outside of EE, a stand-alone file on my server, and it works fine.
However, in the Live HTTP Headers add-one I’m using the XML file is still showing a ?355 after it, but is being returned as 200 OK.
Here’s my theory…
SWFObject which is being used to embed the Flash, is adding a query string to the XML parameter it has been provided. When served straight from the server, the server must just ignore the query string and return the file. However, when server from EE, EE does not ignore the query string and so returns a 404.
Scratch that. Just removed SWFObject from the equation, even using just an EMBED tag results in the same problem when generating the XML in EE. See:
http://www.toongabbieanglican.org.au/tac/xmltest
One difference in generating from EE or serving from the server is the Content-Type.
EE returns: Content-Type text/xml
Server returns Content-Type: application/xml