Мое приложение содержит фреймворки Angular и PHP Yii2.
Я разместил свое приложение на движке облачной платформы Google.
Вот скриншот моего кода и кода файла 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 доступна в директории веб-сервиса. Когда я вызываю REST API из Postman, возвращается ошибка 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: (.*)
Рекомендуется всегда располагать самый широкий участок внизу, а самый узкий — наверху.