Настройка файла .yaml для Google App Engine

0

Я не могу найти рабочие ответы на вопрос о том, как настроить файл.yaml, который вызывает другие скрипты php в каталоге. Я не согласен с файлами.yaml, и там не так много документации, чтобы заставить меня двигаться. Вот что у меня есть:

handlers:
- url: /stylesheets
  static_dir: stylesheets
- url: /adminpanel
  script: pushnotifierv15.php
  secure: always
- url: /admin-services
  script: admin-services/notificationCP.php
- url: /sendMsg.php
  static_files: /admin-services/sendMsg.php
  upload: /admin-services/sendMsg.php

pushnotifierv15.php, вместе с файлом.yaml, находится в корне проекта. Все остальные скрипты находятся в каталоге "admin-services". Я не уверен, как добавить другие скрипты в файл.yaml. "notificationCP.php" - это основной скрипт, а остальные скрипты его подают (через форму отправляет). TIA за любую помощь.

Теги:
google-app-engine
yaml

2 ответа

3
Лучший ответ

Вы можете просто продолжать обрабатывать url:/script: пары по мере необходимости. Например, гипотетически (поскольку я не знаю, как вы назвали свои сценарии или какие URL-адреса вы хотите, чтобы они обрабатывали), где у вас теперь есть

- url: /admin-services
  script: /admin-services/notificationCP.php
- url: /sendMsg.php
  static_files: /admin-services/sendMsg.php
  upload: /admin-services/sendMsg.php

вы можете расширить его до чего-то вроде

- url: /admin-services
  script: /admin-services/notificationCP.php
- url: /another-url
  script: /admin-services/whateverCP.php
- url: /and-yet-another
  script: /admin-services/somethingelseCP.php
- url: /sendMsg.php
  static_files: /admin-services/sendMsg.php
  upload: /admin-services/sendMsg.php

и так далее. Вы также можете использовать регулярные выражения в url: чтобы сценарий обслуживал несколько URL-адресов, соответствующих регулярному выражению (в этом случае будьте осторожны с порядком ваших обработчиков), в качестве крайнего примера, url:.*, Если он присутствует, всегда должен быть последним, поскольку он будет соответствовать чему угодно, и никакие другие URL-адреса ниже его никогда не будут рассмотрены - IOW, маршрутизация происходит, пытаясь сопоставить директивы url: по порядку, сверху вниз).

  • 0
    Хорошая информация Спасибо. Определенно помог мне. Кажется так просто ...
1

Кажется, что вам не хватает ведущего /:

handlers:
- url: /adminpanel
  script: pushnotifierv15.php
  secure: always
- url: /admin-services
  script: /admin-services/notificationCP.php < add missing /

Ссылка: https://cloud.google.com/appengine/docs/php/config/appconfig#PHP_app_yaml_Script_handlers

  • 0
    Как ни странно, это не имеет значения. Я согласен, что это должно быть там, поэтому он был добавлен. К счастью, вышеупомянутое предложение от @Alex Martelli помогло мне. Спасибо за вашу помощь моего надзора!

Ещё вопросы

Сообщество Overcoder
Наверх
Меню