@@ -654,7 +654,8 @@ public static function putObject($input, $bucket, $uri, $acl = self::ACL_PRIVATE
654654
655655		// Custom request headers (Content-Type, Content-Disposition, Content-Encoding) 
656656		if  (is_array ($ requestHeaders ))
657- 			foreach  ($ requestHeaders  as  $ h  => $ v ) $ rest ->setHeader ($ h , $ v );
657+ 			foreach  ($ requestHeaders  as  $ h  => $ v )
658+ 				strpos ($ h , 'x-amz- ' ) === 0  ? $ rest ->setAmzHeader ($ h , $ v ) : $ rest ->setHeader ($ h , $ v );
658659		elseif  (is_string ($ requestHeaders )) // Support for legacy contentType parameter 
659660			$ input ['type ' ] = $ requestHeaders ;
660661
@@ -809,7 +810,8 @@ public static function copyObject($srcBucket, $srcUri, $bucket, $uri, $acl = sel
809810	{
810811		$ rest  = new  S3Request ('PUT ' , $ bucket , $ uri , self ::$ endpoint );
811812		$ rest ->setHeader ('Content-Length ' , 0 );
812- 		foreach  ($ requestHeaders  as  $ h  => $ v ) $ rest ->setHeader ($ h , $ v );
813+ 		foreach  ($ requestHeaders  as  $ h  => $ v )
814+ 				strpos ($ h , 'x-amz- ' ) === 0  ? $ rest ->setAmzHeader ($ h , $ v ) : $ rest ->setHeader ($ h , $ v );
813815		foreach  ($ metaHeaders  as  $ h  => $ v ) $ rest ->setAmzHeader ('x-amz-meta- ' .$ h , $ v );
814816		if  ($ storageClass  !== self ::STORAGE_CLASS_STANDARD ) // Storage class 
815817			$ rest ->setAmzHeader ('x-amz-storage-class ' , $ storageClass );
0 commit comments