Matt makes observations of the state of severs and scripting deployments. I agree with nearly all of what Matt point out. Some of the reasoning behind the varying set-ups is for security reason's, others are to mirror configurations on other servers that had slightly different purposes. In all, what this needs is a solid documentation tool. PHP provides some of this with a function that prints out the build of the server that script resides on, this is usually the first task many of us perform on a machine. This however, is just the tip of the iceberg of the information we need.
This is part of the second and fourth element of the cornerstones of information application development (info apps need to be usable, maintainable, reliable, and repeatable). If a task is difficult to maintain and even harder to repeat there is some work that needs to be done to change the environment or the application.