in reply to keeping two config files in sync
I would change the config file so that it contained a section for each environment or server and the servers selected the correct section at runtime. In these sections, I would only put the parameters that are server or environment specific. Any parameters that are common to all environments and servers would be expressed only once. In this way, each server or environment would have its unique configuration but the same config file would be used in each environment. It also makes it easy to see what the differences are between servers and environments.