我的应用程序包含 Angular 和 Php Yii2 框架。
我将我的应用程序托管到谷歌云平台的应用引擎上。
这是我的代码和 app.yaml 文件代码的屏幕截图。
threadsafe: true
runtime: php55
api_version: 2
handlers:
# The root URL (/) is handled by the Go application.
# No other URLs match this pattern.
- url: /(.+)
static_files: \1
upload: (.*)
- url: /web-service/*
script: web-service/yii
- url: /
static_files: index.html
upload: index.html
我的 Yii2 库在 web-service 目录中可用,当我从 postman 调用 rest api 时,它返回 404 页面未找到错误。
文件中缺少什么东西app.yaml
。
帮我解决这个问题。
我的 Api 是这样调用的。
https://abcxyz.appspot.com/web-service/web/user-registration/login-user
答案1
您的 URL 处理程序的顺序不正确。
GAE 从上到下执行这些操作。您的第一个处理程序将匹配所有内容。它永远不会到达其他两个。
您需要更改 app.yaml 中的顺序:
threadsafe: true
runtime: php55
api_version: 2
handlers:
# The root URL (/) is handled by the Go application.
# No other URLs match this pattern.
- url: /
static_files: index.html
upload: index.html
- url: /web-service/*
script: web-service/yii
- url: /(.+)
static_files: \1
upload: (.*)
建议始终将最宽的放在底部,将最严格的放在顶部。