The following happens in many software projects -
At start, it seems you only need one environment for your web application, well, at most two:
One development environment (AKA your PC) and one server.
But as time pass, you find you need additional environments:
The clients might want their own testing environment, sometimes you need to have a pre-production environment or a staging environment, so business managers can approve the ongoing content as well as look & feel.
Do you really need these environments? What are these environment good for?
Here is a short description of some of the more popular environments and their purpose.