Как указать как корневой, так и поддоменный домен в хранилище Google Cloud Storage?

Я успешно создал статический веб-сайт, размещенный в облачном хранилище Google.

Название ведра выглядит следующим образом: www.example.com

и моя запись CNAME для www указывает на c.storage.googleapis.com

Я проверил как www, так и корневой домен с помощью Инструментов Google для веб-мастеров.

В Инструментах Google для веб-мастеров у меня есть WWW как основной домен (я понятия не имею, если это актуально, но видел ссылку на него на другом месте здесь), и важно, чтобы я обслуживал сайт из www-поддомена, а не корень.

Я могу получить доступ к www.example.com отлично, но независимо от того, что я пытаюсь использовать в моем корневом домене, я получаю ошибку <NoSuchBucket>.

Точка информации: Мой DNS управляется Cloudflare. Когда я использую страницы Github для размещения статических сайтов, я обычно указываю root на www с записью CNAME (и вообще нет записи A, потому что Cloudflare разрешает сглаживание CNAME), но это не работает здесь.

Я попытался указать мой корневой домен на www с записью CNAME и попытался указать его на c.storage.googleapis.com.

Конфигурация веб-сайта Cloud Storage для шага 2 говорит: "For example, for example.com, the CNAME record contains the following information: www CNAME c.storage.googleapis.com", но не упоминает о том, как указывать корневой домен, но это должно быть общим требованием,

Я понимаю, что могу создать дополнительное ведро с корневым доменом и указать его на www в http, но кажется, что должен быть способ сделать это с записями DNS.

Ответ 1

На стороне Google Storage вы ничего не можете сделать, чтобы указать корневой домен example.com на веб-сайт www.example.com. Единственный вариант - перенаправление/пересылка example.com на www.example.com на поставщика DNS:

Проверьте эти ссылки для пересылки на Cloudflare:

https://blog.cloudflare.com/introducing-pagerules-url-forwarding/

https://support.cloudflare.com/hc/en-us/articles/200172286-How-do-I-do-url-forwarding-with-CloudFlare-

Ответ 2

Вы не можете получить доступ к своему ведру, используя URL-адрес, который отличается от вашего домена/поддомена. Даже если вы хотите получить доступ с помощью URL-адреса вашего корневого домена http://yourdomain.com/ к вашему ведру gs://www.yourdomain.com или наоборот.

Итак, вы должны выбрать либо использовать свой ведро с именем root gs://yourdomain.com, либо ваш ковш с именем gs://www.yourdomain.com, если вы выберете ведро www с помощью http://www.yourdomain.com/, тогда его штраф, как он объяснил на документация.

Но если вы предпочитаете использовать URL-адрес вашего корневого домена http://yourdomain.com/ для доступа к вашему ведру gs://yourdomain.com, здесь вам нужно установить @запись домена как ALIAS/ANAME, которые действуют так же, как когда CNAME является субдоменом, когда он указывает на c.storage.googleapis.com

Вы можете обнаружить, что указывая CNAME корневого домена через @Record не поддерживаются поставщиками вашего домена. Чтобы выйти из этого, вы можете подумайте о том, чтобы указать NAME SERVERS поставщику DNS, который поддерживает ALIAS или ANAME. Более подробно см. этот ответ.

Вы можете попробовать Google Cloud Storage (GCS), установить Custom NameServers для yourdomain.com и установите его @Запись DNS в качестве псевдоним до c.storage.googleapis.com. Подайте ваш ведро как общедоступный-читаемый и названный так же, как TLD (gs://yourdomain.com). Вы можете обнаружить, что он работает нормально.

Ответ 3

Мое решение:  - Я создал статический веб-сайт, размещенный в Google Cloud Storage, с именем ведра, например: www.mydomain.hu  - Добавлена ​​запись CNAME у моего DNS-провайдера для www, которая указывает на c.storage.googleapis.com.  - Создал файл .htaccess с его содержимым и загрузил в корневой каталог mydomain.hu/

Options +FollowSymLinks
RewriteEngine on
RewriteCond %{HTTP_HOST} ^mydomain\.hu
RewriteRule ^(.*)$ http://www.mydomain.hu/$1 [R=permanent,L]

Если у вас уже есть файл .htaccess, вставьте эти четыре строки кода в начало файла.

Ответ 4

Это решение другого другого сайта обмена стека работало для меня

1) Используйте запись CNAME, чтобы настроить www.example.com на пересылку к истинному имени хоста.

2) Чтобы настроить незащищенный домен, добавьте "Синтетическую запись" и настройте "Переадресация поддоменов". В текстовом поле поддомена введите знак @и ничего больше.

3) Выберите опцию "Прямой путь". Это должно делать именно то, что вы хотите.

https://webmasters.stackexchange.com/info/78481/forward-naked-domain-with-url-path-for-my-google-domain