Переименование index.html в Google App Engine

Хорошо, позвольте мне сначала разобраться. Я по ошибке добавил дату истечения срока действия 365 дней в свой файл index.html . Теперь я внес изменения в файл JS, который изменил имя импорта в моем index.html , и теперь он пытается импортировать не тот файл. Упс.

Итак, я думаю, давайте изменим имя файла по умолчанию на другое, которое не кэшируется.

То, что у меня есть сейчас

В моем проекте Angular я изменил все здания так что теперь мой файл index.html называется main.html . Даже сам файл называется main.html , и, проверяя в моей папке dist, нет index.html , только main.html .

] Я разместил сайт на Google App Engine, и эту команду я использовал для развертывания после сборки.

gcloud app deploy app.yaml --quiet --project =

Вот мой app.yaml

api_version: 1

env: standard
runtime: python27
service: <service-name>
threadsafe: yes

automatic_scaling:
  min_idle_instances: 1

handlers:

- url: /(.*\.(css|eot|gz|ico|js|map|png|jpg|jpeg|svg|ttf|woff|woff2|pdf|gif))
  static_files: dist/browser/\1
  upload: dist/browser/(.*\.(css|eot|gz|ico|js|map|png|jpg|jpeg|svg|ttf|woff|woff2|pdf|gif))
  expiration: "365d"

- url: /.*
  static_files: dist/browser/main.html
  upload: dist/browser/main.html
  secure: always
  expiration: "0s"

skip_files:
 ## bunch of files

Проблема:

Похоже, что Google все еще обслуживает index.html , хотя, честно говоря, я не совсем уверен, как это проверить. Как сказать ему, что он должен использовать main.html в качестве файла по умолчанию?

1
задан 5 November 2019 в 17:10
1 ответ

Отредактированный Ответ:

проблема, что Вы не можете переименовать index.html на Механизме Приложения, из-за кэшируемых файлов и потому что у Вас есть свой app.yaml файл неправильно.

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

у Вас есть несколько опций:

1-Использования новое имя файла

2-Заголовков Завершающего тега Использования

3-Включают параметр строки запроса получить запрос к серверу. (Запрос к/main.html? timestamp=currenttimestamp, параметр должен измениться, или он будет кэшироваться также)

  • , Если Вы выполните запрос к своему приложению на dist/browser/main.html, то это никогда не будет добираться до второго обработчика, он будет всегда останавливаться в первом, потому что он соответствует шаблону, обработчики идут от начала до конца.

, Если Вы хотите вынудить dist/browser/main.html быть единственным файлом всегда, затем app.yaml файл должен быть:

api_version: 1

env: standard
runtime: python27
service: <service-name>
threadsafe: yes

automatic_scaling:
  min_idle_instances: 1

handlers:
- url: /dist/browser/main.html
  static_files: dist/browser/main.html
  upload: dist/browser/main.html
  secure: always
  expiration: "0s"
- url: /(.*\.(css|eot|gz|html|ico|js|map|png|jpg|jpeg|svg|ttf|woff|woff2|pdf|gif))
  static_files: dist/browser/\1
  upload: dist/browser/(.*\.(css|eot|gz|html|ico|js|map|png|jpg|jpeg|svg|ttf|woff|woff2|pdf|gif))
  expiration: "365d"


skip_files:
 ## bunch of files
0
ответ дан 4 December 2019 в 02:34

Теги

Похожие вопросы