Corollary lesson: don't assume anything in the contract.
PHP website, you might of course assume it's going to be hosted on Linux. Who ever hosts PHP on Windows servers?
Oh, your client does? Nasty surprise if you find that out after signing the contract.