kopia lustrzana https://github.com/gaul/s3proxy
correctly follow the host header documentation
https://docs.aws.amazon.com/AmazonS3/latest/dev/VirtualHosting.html#VirtualHostingSpecifyBucketpull/60/head
rodzic
542a791a9e
commit
c26693490c
|
@ -223,10 +223,15 @@ final class S3ProxyHandler extends AbstractHandler {
|
||||||
if (hostHeader != null && virtualHost.isPresent()) {
|
if (hostHeader != null && virtualHost.isPresent()) {
|
||||||
hostHeader = HostAndPort.fromString(hostHeader).getHostText();
|
hostHeader = HostAndPort.fromString(hostHeader).getHostText();
|
||||||
String virtualHostSuffix = "." + virtualHost.get();
|
String virtualHostSuffix = "." + virtualHost.get();
|
||||||
|
if (!hostHeader.equals(virtualHost.get())) {
|
||||||
if (hostHeader.endsWith(virtualHostSuffix)) {
|
if (hostHeader.endsWith(virtualHostSuffix)) {
|
||||||
String bucket = hostHeader.substring(0,
|
String bucket = hostHeader.substring(0,
|
||||||
hostHeader.length() - virtualHostSuffix.length());
|
hostHeader.length() - virtualHostSuffix.length());
|
||||||
uri = "/" + bucket + uri;
|
uri = "/" + bucket + uri;
|
||||||
|
} else {
|
||||||
|
String bucket = hostHeader.toLowerCase();
|
||||||
|
uri = "/" + bucket + uri;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Ładowanie…
Reference in New Issue