Как заставить косую черту в статическом сайте, размещенном в облачном хранилище Google? - PullRequest
0 голосов
/ 26 сентября 2018

У меня есть веб-сайт, размещенный в корзине Google Cloud Storage, следуя инструкциям на https://cloud.google.com/storage/docs/hosting-static-website. Сайт работает, но прямой переход на любую страницу подкаталога, например https://example.com/blog,, перенаправит меня на https://example.com/blog/index.html, и иногда это приводит к другому перенаправлению на мою страницу 404.Если я начну с https://example.com, и перейду в другое место, сайт будет работать нормально.

Это с MainPageSuffix, установленным в index.html, и NotFoundPage, установленным в 404.html.

Если я перехожу на страницу подкаталога с косой чертой в конце (например, https://example.com/blog/),, сайт работает нормально. Я также выглядел как совет по устранению неполадок для 301, и он работает черезшаги не сработали для меня.

Есть ли способ принудительно использовать конечный слеш для сегментов GCS в качестве статического сайта? Если нет, как я могу обойти проблемы, с которыми я сталкиваюсь, при перенаправлениях на index.html?

1 Ответ

0 голосов
/ 04 октября 2018

Если ваш MainPageSuffix имеет значение index.html, когда вы пытаетесь получить прямой доступ к подкаталогу, например, как https: // example.com/blog, как вы указали, служба пытается найти целевой объект или пример https: //.ком / блог / index.html.То же самое верно и для https: // example.com/blog/ при условии, что для / blog / не существует нулевого байта объекта.В случае, если для / blog / существует пустой объект с нулевым байтом, См. Тему устранения неполадок для удаления этого объекта с нулевым байтом.После удаления объекта с нулевым байтом система покажет https: // example.com/blog/index.html.Если такого объекта не существует, система покажет страницу с ошибкой «404.html», если она установлена ​​для NotFoundPage.

В вашем случае, если вы включите файл index.html в подкаталог / blog / он должен разрешитьсяпроблема заключается в отображении страницы https: // example.com/blog/index.html в обоих сценариях https://example.com/blog или https://example.com/blog/. В качестве альтернативы необходимо указать полный путь для доступа к любому конкретному объекту в пределахподкаталог.

Для получения дополнительной информации о том, как работает подкаталог, см. Следующие ссылки.

Как работают подкаталоги

С Рекомендуется: Назначение специальных страниц :

Индексная страница (также называемая Индекс каталога веб-сервера - это файл, который отправляется посетителям, когда они запрашивают URL-адрес, с которым нет связанного файла. Когда вы назначаете MainPageSuffix, Cloud Storage ищет файл с таким именем, префикс которого совпадает с URL-адресом, запрошенным посетителем.

Например, допустим, вы установили MainPageSuffix вашего статического веб-сайта на index.html. Кроме того, допустим, что в вашем ведре нет файла с именем каталог. Www.example.com. В этом случае пользователь запрашиваетURL http://www.example.com/directory, Cloud Storage пытается обслужить файл www.example.com/directory/index.html. Если этот файл не существует, Cloud Storage возвращает страницу с ошибкой.

MainPageSuffix такжеуправляет файлом, который подается, когда пользователи запрашивают сайт верхнего уровня. Продолжая приведенный выше пример, если пользователь запрашивает http://www.example.com, Cloud Storage пытается обслуживать файл.le www.example.com/index.html.

Если у вас все еще возникают какие-либо проблемы, пожалуйста, предоставьте разбивку вашего веб-сайта, чтобы можно было найти конкретное решение для вашей проблемы, а также укажите, каким именно результатом вы являетесь.ожидая.

Для информации я намеренно вставляю пробел после каждого http: //, чтобы не включать в этот пост столько ссылок.

...