Развертывание в GCP App Engine, но не обслуживает страницы, отображаемые на стороне сервера - PullRequest
1 голос
/ 19 июня 2019

Я пытаюсь развернуть приложение Angular 7 Universal в Google Cloud Platform, App Engine. Развертывание прошло успешно, но, похоже, не происходит рендеринг на стороне сервера, только на стороне клиента.

Сборка и запуск сервера работают локально. Когда я запрашиваю страницу в браузере, я вижу страницу экспресс / углового рендеринга на сервере, тег и весь другой контент обслуживаются напрямую.

При развертывании на сервере и запросе страницы я вижу только возвращенный минимальный html (<app-root></app-root>), который показывает, что SSR не происходит. В остальном приложение работает хорошо.

Структура моей папки выглядит следующим образом:

dist/

  - browser/
    - index.html
    - other js / css / assets

  - server/
    - main.js

  - server.js

package.json

"scripts": {
    ...
    "start": "node dist/server.js",

app.yaml

runtime: nodejs10

handlers:
# Routing for bundles to serve directly
- url: /((?:runtime|main|polyfills|styles|vendor)\.[a-z0-9]+\.js)
  #secure: always
  redirect_http_response_code: 301
  static_files: dist/browser/\1
  upload: dist/browser/.*

# Routing for bundle maps to serve directly
- url: /((?:runtime|main|polyfills|styles|vendor)\.[a-z0-9]+\.js\.map)
  #secure: always
  redirect_http_response_code: 301
  static_files: dist/browser/\1
  upload: dist/browser/.*

# Routing for a prod styles.bundle.css to serve directly
- url: /(styles\.[a-z0-9]+\.css)
  #secure: always
  redirect_http_response_code: 301
  static_files: dist/browser/\1
  upload: dist/browser/.*

# Routing for typedoc, assets, and favicon.ico to serve directly
- url: /((?:assets|docs)/.*|favicon\.ico)
  #secure: always
  redirect_http_response_code: 301
  static_files: dist/browser/\1
  upload: dist/browser/.*

# Any other requests are routed to index.html for angular to handle so we don't need hash URLs
- url: /.*
  #secure: always
  redirect_http_response_code: 301
  static_files: dist/browser/index.html
  upload: dist/browser/index\.html
  http_headers:
    Strict-Transport-Security: max-age=31536000; includeSubDomains
    X-Frame-Options: DENY

- url: /
  static_dir: dist/

Если это поможет, вот скриншот Debug View текущих файлов, загруженных в GCP.

Screenshot from GCP

Где происходит это несоответствие между запуском сервера?

...