The HTTP spec suggests that clients supply the value of Last-Modified that they previously received from the server to If-Modified-Since. When comparing If-Modified-Since > Last-Modified, however, the Mock object would fail to return a 304 for such a case.
Logics have been centralised:
* region to hostname
* url generation
* signature
* chaning scheme also changes the port
During the process a couple of inconsistencies have also
been fixed.
Known limitations:
When using the @endpoint with a custom port you need to specify the port
when using get_object_http_url or get_object_https_url.
When using bucket names that contain dots outside of us-east-1 make sure to
access it with the same region in your AWS::Storage.