From 3920bbc55f6d8b4011650f651e5836b838e11c11 Mon Sep 17 00:00:00 2001 From: zhagnlu <1542303831@qq.com> Date: Fri, 10 Nov 2023 10:32:20 +0800 Subject: [PATCH] Force set aliyun use_virtual_host to true for all (#28158) Signed-off-by: luzhang Co-authored-by: luzhang --- internal/core/src/storage/ChunkManager.cpp | 8 ++++++-- internal/core/src/storage/MinioChunkManager.cpp | 7 +++++-- 2 files changed, 11 insertions(+), 4 deletions(-) diff --git a/internal/core/src/storage/ChunkManager.cpp b/internal/core/src/storage/ChunkManager.cpp index ea097e47d1..781bf72ed4 100644 --- a/internal/core/src/storage/ChunkManager.cpp +++ b/internal/core/src/storage/ChunkManager.cpp @@ -145,6 +145,10 @@ AliyunChunkManager::AliyunChunkManager(const StorageConfig& storage_config) { InitSDKAPIDefault(storage_config.log_level); Aws::Client::ClientConfiguration config = generateConfig(storage_config); + + // For aliyun oss, support use virtual host mode + StorageConfig mutable_config = storage_config; + mutable_config.useVirtualHost = true; if (storage_config.useIAM) { auto aliyun_provider = Aws::MakeShared< Aws::Auth::AliyunSTSAssumeRoleWebIdentityCredentialsProvider>( @@ -160,9 +164,9 @@ AliyunChunkManager::AliyunChunkManager(const StorageConfig& storage_config) { aliyun_provider, config, Aws::Client::AWSAuthV4Signer::PayloadSigningPolicy::Never, - storage_config.useVirtualHost); + mutable_config.useVirtualHost); } else { - BuildAccessKeyClient(storage_config, config); + BuildAccessKeyClient(mutable_config, config); } LOG_SEGCORE_INFO_ << "init AliyunChunkManager with parameter[endpoint: '" diff --git a/internal/core/src/storage/MinioChunkManager.cpp b/internal/core/src/storage/MinioChunkManager.cpp index de723afac1..5f926800f4 100644 --- a/internal/core/src/storage/MinioChunkManager.cpp +++ b/internal/core/src/storage/MinioChunkManager.cpp @@ -238,6 +238,9 @@ void MinioChunkManager::BuildAliyunCloudClient( const StorageConfig& storage_config, const Aws::Client::ClientConfiguration& config) { + // For aliyun oss, support use virtual host mode + StorageConfig mutable_config = storage_config; + mutable_config.useVirtualHost = true; if (storage_config.useIAM) { auto aliyun_provider = Aws::MakeShared< Aws::Auth::AliyunSTSAssumeRoleWebIdentityCredentialsProvider>( @@ -253,9 +256,9 @@ MinioChunkManager::BuildAliyunCloudClient( aliyun_provider, config, Aws::Client::AWSAuthV4Signer::PayloadSigningPolicy::Never, - storage_config.useVirtualHost); + mutable_config.useVirtualHost); } else { - BuildAccessKeyClient(storage_config, config); + BuildAccessKeyClient(mutable_config, config); } }