Google App Engine 路由 dispatch.yaml
Google App Engine routing with dispatch.yaml
我尝试在我的沙盒 GCP 项目上部署一个 Web 应用程序,该项目已经部署了一个应用程序。所以我正在尝试同时部署两个网络应用程序的路径。
我的调度是这样的
dispatch:
- url: "*/wc/api/.*"
service: wc-api
- url: "*/wc/.*"
service: wc-front
- url: "*/.*"
service: default
当我这样做时,我对 mysandbox.appspot.com/wc/ 的所有调用都被重定向到我的 default
服务,我不明白为什么(我可以在default
服务的日志)。
如果这有帮助,这是我的 wc-front
服务的 app.yaml
。
runtime: python27
api_version: 1
threadsafe: yes
service: wc-front
default_expiration: "10m"
handlers:
- url: /wc/.*
script: app.APP
login: required
secure: always
你看到这里有什么错误吗?
(直接调用 wc-front-dot-mysandbox.appspot.com/wc/ returns 典型的 App Engine 404 错误)
谢谢
是的,的确,您需要配置 dispatch.yaml
文件,App Engine 才能根据您在那里设置的 URL 路由您的应用程序。您的 service: default
似乎正在获取所有 URL 并将它们重定向到那里设置的服务。
考虑到这一点,我建议您查看有关配置 dispatch.yaml
文件的官方文档 - 您可以获得关于如何配置它的一些更好的想法 - 以及其他 post来自社区,那里的另一个用户有与您相似的用例,我相信应该对您有所帮助。
如果这些信息对您有帮助,请告诉我!
看来问题出在 .*
表示法上。这应该只用于非常通用的 */.*
规则。
我的新 - 工作 - 调度
dispatch:
- url: "*/wc/api/*"
service: wc-api
- url: "*/wc/*"
service: wc-front
- url: "*/.*"
service: default
我尝试在我的沙盒 GCP 项目上部署一个 Web 应用程序,该项目已经部署了一个应用程序。所以我正在尝试同时部署两个网络应用程序的路径。
我的调度是这样的
dispatch:
- url: "*/wc/api/.*"
service: wc-api
- url: "*/wc/.*"
service: wc-front
- url: "*/.*"
service: default
当我这样做时,我对 mysandbox.appspot.com/wc/ 的所有调用都被重定向到我的 default
服务,我不明白为什么(我可以在default
服务的日志)。
如果这有帮助,这是我的 wc-front
服务的 app.yaml
。
runtime: python27
api_version: 1
threadsafe: yes
service: wc-front
default_expiration: "10m"
handlers:
- url: /wc/.*
script: app.APP
login: required
secure: always
你看到这里有什么错误吗?
(直接调用 wc-front-dot-mysandbox.appspot.com/wc/ returns 典型的 App Engine 404 错误)
谢谢
是的,的确,您需要配置 dispatch.yaml
文件,App Engine 才能根据您在那里设置的 URL 路由您的应用程序。您的 service: default
似乎正在获取所有 URL 并将它们重定向到那里设置的服务。
考虑到这一点,我建议您查看有关配置 dispatch.yaml
文件的官方文档 - 您可以获得关于如何配置它的一些更好的想法 - 以及其他 post来自社区,那里的另一个用户有与您相似的用例,我相信应该对您有所帮助。
如果这些信息对您有帮助,请告诉我!
看来问题出在 .*
表示法上。这应该只用于非常通用的 */.*
规则。
我的新 - 工作 - 调度
dispatch:
- url: "*/wc/api/*"
service: wc-api
- url: "*/wc/*"
service: wc-front
- url: "*/.*"
service: default