Copyright | (c) 2013-2021 Brendan Hay |
---|---|
License | Mozilla Public License, v. 2.0. |
Maintainer | Brendan Hay <brendan.g.hay+amazonka@gmail.com> |
Stability | auto-generated |
Portability | non-portable (GHC extensions) |
Safe Haskell | None |
Sets the configuration of the website that is specified in the website
subresource. To configure a bucket as a website, you can add this
subresource on the bucket with website configuration information such as
the file name of the index document and any redirect rules. For more
information, see
Hosting Websites on Amazon S3.
This PUT action requires the S3:PutBucketWebsite
permission. By
default, only the bucket owner can configure the website attached to a
bucket; however, bucket owners can allow other users to set the website
configuration by writing a bucket policy that grants them the
S3:PutBucketWebsite
permission.
To redirect all website requests sent to the bucket's website endpoint, you add a website configuration with the following elements. Because all requests are sent to another website, you don't need to provide index document name for the bucket.
WebsiteConfiguration
RedirectAllRequestsTo
HostName
Protocol
If you want granular control over redirects, you can use the following elements to add routing rules that describe conditions for redirecting requests and information about the redirect destination. In this case, the website configuration must provide an index document for the bucket, because some requests might not be redirected.
WebsiteConfiguration
IndexDocument
Suffix
ErrorDocument
Key
RoutingRules
RoutingRule
Condition
HttpErrorCodeReturnedEquals
KeyPrefixEquals
Redirect
Protocol
HostName
ReplaceKeyPrefixWith
ReplaceKeyWith
HttpRedirectCode
Amazon S3 has a limitation of 50 routing rules per website configuration. If you require more than 50 routing rules, you can use object redirect. For more information, see Configuring an Object Redirect in the Amazon S3 User Guide.
Synopsis
- data PutBucketWebsite = PutBucketWebsite' {}
- newPutBucketWebsite :: BucketName -> WebsiteConfiguration -> PutBucketWebsite
- putBucketWebsite_contentMD5 :: Lens' PutBucketWebsite (Maybe Text)
- putBucketWebsite_expectedBucketOwner :: Lens' PutBucketWebsite (Maybe Text)
- putBucketWebsite_bucket :: Lens' PutBucketWebsite BucketName
- putBucketWebsite_websiteConfiguration :: Lens' PutBucketWebsite WebsiteConfiguration
- data PutBucketWebsiteResponse = PutBucketWebsiteResponse' {
- newPutBucketWebsiteResponse :: PutBucketWebsiteResponse
Creating a Request
data PutBucketWebsite Source #
See: newPutBucketWebsite
smart constructor.
PutBucketWebsite' | |
|
Instances
Create a value of PutBucketWebsite
with all optional fields omitted.
Use generic-lens or optics to modify other optional fields.
The following record fields are available, with the corresponding lenses provided for backwards compatibility:
$sel:contentMD5:PutBucketWebsite'
, putBucketWebsite_contentMD5
- The base64-encoded 128-bit MD5 digest of the data. You must use this
header as a message integrity check to verify that the request body was
not corrupted in transit. For more information, see
RFC 1864.
For requests made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this field is calculated automatically.
$sel:expectedBucketOwner:PutBucketWebsite'
, putBucketWebsite_expectedBucketOwner
- The account ID of the expected bucket owner. If the bucket is owned by a
different account, the request will fail with an HTTP
403 (Access Denied)
error.
$sel:bucket:PutBucketWebsite'
, putBucketWebsite_bucket
- The bucket name.
$sel:websiteConfiguration:PutBucketWebsite'
, putBucketWebsite_websiteConfiguration
- Container for the request.
Request Lenses
putBucketWebsite_contentMD5 :: Lens' PutBucketWebsite (Maybe Text) Source #
The base64-encoded 128-bit MD5 digest of the data. You must use this header as a message integrity check to verify that the request body was not corrupted in transit. For more information, see RFC 1864.
For requests made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this field is calculated automatically.
putBucketWebsite_expectedBucketOwner :: Lens' PutBucketWebsite (Maybe Text) Source #
The account ID of the expected bucket owner. If the bucket is owned by a
different account, the request will fail with an HTTP
403 (Access Denied)
error.
putBucketWebsite_bucket :: Lens' PutBucketWebsite BucketName Source #
The bucket name.
putBucketWebsite_websiteConfiguration :: Lens' PutBucketWebsite WebsiteConfiguration Source #
Container for the request.
Destructuring the Response
data PutBucketWebsiteResponse Source #
See: newPutBucketWebsiteResponse
smart constructor.
Instances
Eq PutBucketWebsiteResponse Source # | |
Defined in Amazonka.S3.PutBucketWebsite | |
Read PutBucketWebsiteResponse Source # | |
Show PutBucketWebsiteResponse Source # | |
Defined in Amazonka.S3.PutBucketWebsite showsPrec :: Int -> PutBucketWebsiteResponse -> ShowS # show :: PutBucketWebsiteResponse -> String # showList :: [PutBucketWebsiteResponse] -> ShowS # | |
Generic PutBucketWebsiteResponse Source # | |
Defined in Amazonka.S3.PutBucketWebsite type Rep PutBucketWebsiteResponse :: Type -> Type # | |
NFData PutBucketWebsiteResponse Source # | |
Defined in Amazonka.S3.PutBucketWebsite rnf :: PutBucketWebsiteResponse -> () # | |
type Rep PutBucketWebsiteResponse Source # | |
newPutBucketWebsiteResponse :: PutBucketWebsiteResponse Source #
Create a value of PutBucketWebsiteResponse
with all optional fields omitted.
Use generic-lens or optics to modify other optional fields.