Take headers, parameters and url into account when build cache keys
Don't cache errors