May be the deployment environment has different settings, may be version issues, may be rights and /or permissions....just anything. May be you forgot to copy some files..anything here is of importance taking note of.
I used to be a victim till I decided to be replicating close to if not what the client has. In development, I try as much as possible to use the technology supporting the final product.
If its unix based, develop in unix based systems, if windows, same. Just be close to the final environment, if you can't be there.