gpt4 book ai didi

google-cloud-platform - HTTPS 负载均衡器后端 URL 映射无法加载渲染页面

转载 作者:行者123 更新时间:2023-12-04 11:32:43 25 4
gpt4 key购买 nike

我的应用程序使用 HTTPS 使用 docker-compose 运行所有服务。
应用程序运行没有任何问题,我们正在尝试为所有服务设置 HTTPS 负载均衡器。
我们使用这个 Documentation 创建了一个负载均衡器.
我们添加了三个后端服务,并为所有后端服务设置了主机和路径规则。
HTTPS_Loadbalancer
但是当尝试查看以下 HTTPS URL 时
https://Loadbalancer-ip:/strapi
https://Loadbalancer-ip:/auth
https://Loadbalancer-ip:/images/1。
我正在获取 404 页面。但它单独适用于所有不匹配(默认)。

最佳答案

我想帮助您解决当前的限制。
A URL redirect redirects your domain's visitors from one URL to another.
在部署 URL 映射之前,请确保验证 URL 映射配置以确保映射按预期将请求路由到适当的后端。您可以通过向 URL 映射配置添加测试来实现此目的。
使用 gcloud compute url-maps validate命令来验证 URL 映射配置。


gcloud compute url-maps validate --source PATH_TO_URL_MAP_CONFIG_FILE

PATH_TO_URL_MAP_CONFIG_FILE:替换为包含用于验证的 URL 映射配置的文件的路径。
验证对现有负载均衡器 URL 映射的更改
如果您有一个现有的负载均衡器需要更改 URL 映射,您可以在使它们生效之前测试这些配置更改。
  • 将负载均衡器的现有 URL 映射导出到 YAML 文件。
  • gcloud compute url-maps export URL_MAP_NAME \
    --destination PATH_TO_URL_MAP_CONFIG_FILE \
    --global

  • 使用新配置编辑 YAML 文件。例如,如果您要编辑外部 HTTP(S) 负载平衡器并使用路径 /video 发送所有请求到一个名为 video-backend-service 的新后端服务,您可以将测试添加到 URL 映射配置中,如下所示:

  • 具有单个默认值的现有 URL 映射配置 web-backend-service :
     kind: compute#urlMap
    name: URL_MAP_NAME
    defaultService: https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/backendService/web-backend-service
    编辑了 URL 映射配置,添加了路径匹配器并测试了默认值 web-backend-service和新 video-backend-service后台服务:
     kind: compute#urlMap
    name: URL_MAP_NAME
    defaultService: https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/backendService/web-backend-service
    hostRules:
    - hosts:
    - '*'
    pathMatcher: pathmap
    pathMatchers:
    - defaultService: https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/backendService/web-backend-service
    name: pathmap
    pathRules:
    - paths:
    - /video
    - /video/*
    service: https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/backendService/video-backend-service
    tests:
    - description: Test routing to existing web service
    host: foobar
    path: /
    service: https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/backendService/web-backend-service
    - description: Test routing to new video service
    host: foobar
    path: /video
    service: https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/backendService/video-backend-service
  • 验证新配置。
  • gcloud compute url-maps validate --source PATH_TO_URL_MAP_CONFIG_FILE
    如果所有测试都成功通过,您应该会看到一条成功消息,例如:
    Successfully validated [https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/urlMaps/URL_MAP_CONFIG_FILE_NAME
    如果测试失败,则会出现错误消息。对 URL 映射配置文件进行必要的修复,然后再次尝试验证。
    Error: Invalid value for field 'urlMap.tests': ''.
    Test failure: Expect URL 'HOST/PATH' to map to service 'EXPECTED_BACKEND_SERVICE', but actually mapped to 'ACTUAL_BACKEND_SERVICE'.
  • 一旦您知道新配置有效并且不会影响您现有的设置,您就可以将其导入到 URL 映射中。请注意,此步骤还将使用新配置部署 url 映射。
  • gcloud compute url-maps import URL_MAP_NAME \
    --source PATH_TO_URL_MAP_CONFIG_FILE \
    --global

    重要提示:如果您最初在 Cloud Console 中设置负载均衡器,则网址映射名称与负载均衡器的名称相同。
    玩得开心!

    关于google-cloud-platform - HTTPS 负载均衡器后端 URL 映射无法加载渲染页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66057563/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com