The first thing I would check is to see if the libraries that are being loaded are different in one instance over another. I’ve seen several instances where SOAP gets messed up by an instance of htaccess2 being loaded. The libraries are written to use htaccess2 if they find it but otherwise fall back on htaccess. This will give you different behavior, and could be loaded by all kinds or extensions (the most assinign being Hoe, which your probably not even using at all but gets loaded because someone used to to package their gem). The best way I know of to do this is to use $LOADED_FEATURES in irb and then again in script/console. It takes some going through, but it may lead you to an answer.