Google App Engine не показывает все URL-маршруты

У меня возникают проблемы при попытке перенести и запустить мое приложение PHP в локальной среде, используя порт 8080 своего сервера в Google App Engine.
У меня проблемы с тем, как работает app.yaml. Вот мой следующий код для y app.yaml:

application: huge
version: 1
runtime: php55
api_version: 1


handlers:
- url: /.*
script: public/index.php

- url: /login/index
script: application/view/login/index.php

первый URL и скрипт работают. Однако мое приложение отличается от обычного на XAMPP. Приложение PHP структурировано как MVC, что означает, что файлы PHP находятся не в корневом каталоге, а в упорядоченных папках, и я использую laravel и composer в XAMPP. Я сейчас передаю это приложение в GAE. Основной корневой файл находится в public / index.html, но все остальные файлы находятся в папках, как вы можете видеть, я пытался вызвать одну страницу во втором вызове сценария, как application/view/login/index.php, Также CSS внутри public/css папка не загружается, поэтому стилизация исчезла из приложения. Должен ли я сообщать Google App Engine каждый маршрут? Если это так, может кто-нибудь показать мне один пример, как будет работать второй вызов и как я буду вызывать мой CSS для работы.

0

Решение

Порядок обработчиков в app.yaml файл имеет значение, будет использовано первое сопоставление с образцом.

В твоем случае /login/index на самом деле соответствует /.*, так что он будет передан 1-му обработчику. Чтобы сделать то, что вы ожидаете, вам нужно поменять местами порядок обработчиков.

Вам также может понадобиться добавить статические обработчики файлов / dirs для файлов не-php (например, для файлов css)

Вы должны потратить некоторое время на ознакомление с настройкой php-приложений: https://cloud.google.com/appengine/docs/php/config/appconfig

0

Другие решения

Других решений пока нет …