Print the website configuration for a bucket

Print the website configuration for a Cloud Storage bucket.

Code sample

C++

For more information, see the Cloud Storage C++ API reference documentation.

To authenticate to Cloud Storage, set up Application Default Credentials. For more information, see Set up authentication for a local development environment.

namespace gcs = ::google::cloud::storage;
using ::google::cloud::StatusOr;
[](gcs::Client client, std::string const& bucket_name) {
  StatusOr<gcs::BucketMetadata> bucket_metadata =
      client.GetBucketMetadata(bucket_name);
  if (!bucket_metadata) throw std::move(bucket_metadata).status();

  if (!bucket_metadata->has_website()) {
    std::cout << "Static website configuration is not set for bucket "
              << bucket_metadata->name() << "\n";
    return;
  }

  std::cout << "Static website configuration set for bucket "
            << bucket_metadata->name() << "\nThe main page suffix is: "
            << bucket_metadata->website().main_page_suffix
            << "\nThe not found page is: "
            << bucket_metadata->website().not_found_page << "\n";
}

PHP

For more information, see the Cloud Storage PHP API reference documentation.

To authenticate to Cloud Storage, set up Application Default Credentials. For more information, see Set up authentication for a local development environment.

use Google\Cloud\Storage\StorageClient;

/**
 * Print the website configuration for a Cloud Storage bucket.
 *
 * @param string $bucketName The name of your Cloud Storage bucket.
 */
function print_bucket_website_configuration(string $bucketName): void
{
    $storage = new StorageClient();
    $bucket = $storage->bucket($bucketName);
    $info = $bucket->info();

    if (!array_key_exists('website', $info)) {
        printf('Bucket website configuration not set' . PHP_EOL);
    } else {
        printf(
            'Index page: %s' . PHP_EOL . '404 page: %s' . PHP_EOL,
            $info['website']['mainPageSuffix'],
            $info['website']['notFoundPage'],
        );
    }
}

What's next

To search and filter code samples for other Google Cloud products, see the Google Cloud sample browser.