Я пытаюсь создать файл .yaml для веб-приложения flutter с серверной частью php, но у меня возникают странные проблемы.
Приложение структурировано следующим образом:
Приложение flutter находится в Admin / web / и включает файлы различных типов, но не файлы php. Целевая страница - index. html.
Бэкэнд PHP находится в Admin /. Все файлы PHP должны быть из Admin /
Он в настоящее время загружает index. html, но по какой-то причине, когда я пытаюсь сделать website.com/manifest.json, я получаю index. html очередной раз. То же самое относится к FontManifest. json - он дает мне index. html.
Он действительно работает с каталогом веб-сайта root (website.com/), index. html и main.dart. js - соответствующие файлы передаются точно.
Вот мой .yaml файл:
service: admin
runtime: php72
handlers:
- url: /(.+\.(ico|jpg|png|gif))$
static_files: Admin/web/\1
upload: Admin/web/(.+\.(ico|jpg|png|gif))$
login: admin
secure: always
- url: /(.+\.(htm|html|css|js|json|map|ttf|dart))$
static_files: Admin/web/\1
upload: Admin/web/(.+\.(htm|html|css|js|json|map|ttf|dart))$
login: admin
secure: always
- url: /(.+\.php)$
static_files: Admin/\1
upload: Admin\/(.+\.php)$
login: admin
secure: always
- url: /(.*)$
static_files: Admin/web/index.html
upload: Admin/web/(.*)$
login: admin
secure: always
Я заметил, что страница сразу перенаправляется с website.com/ на website.com/#/, поэтому я также попробовал этот файл .yaml:
service: admin
runtime: php72
handlers:
- url: /(.+\.(ico|jpg|png|gif))$
static_files: Admin/web/\1
upload: Admin/web/(.+\.(ico|jpg|png|gif))$
login: admin
secure: always
- url: /#/(.+\.(ico|jpg|png|gif))$
static_files: Admin/web/\1
upload: Admin/web/(.+\.(ico|jpg|png|gif))$
login: admin
secure: always
- url: /(.+\.(htm|html|css|js|json|map|ttf|dart))$
static_files: Admin/web/\1
upload: Admin/web/(.+\.(htm|html|css|js|json|map|ttf|dart))$
login: admin
secure: always
- url: /#/(.+\.(htm|html|css|js|json|map|ttf|dart))$
static_files: Admin/web/\1
upload: Admin/web/(.+\.(htm|html|css|js|json|map|ttf|dart))$
login: admin
secure: always
- url: /(.+\.php)$
static_files: Admin/\1
upload: Admin\/(.+\.php)$
login: admin
secure: always
- url: /(.*)$
static_files: Admin/web/index.html
upload: Admin/web/(.*)$
login: admin
secure: always
Тем не менее, с этим файлом .yaml я получил те же результаты.
Изменить Я понял, что предыдущий файл .yaml даст те же результаты, что и исходный из-за порядка обработчиков, поэтому я попробовал следующее (и получил те же результаты):
service: admin
runtime: php72
handlers:
- url: /#/(.+\.(ico|jpg|png|gif))$
static_files: Admin/web/\1
upload: Admin/web/(.+\.(ico|jpg|png|gif))$
login: admin
secure: always
- url: /(.+\.(ico|jpg|png|gif))$
static_files: Admin/web/\1
upload: Admin/web/(.+\.(ico|jpg|png|gif))$
login: admin
secure: always
- url: /#/(.+\.(htm|html|css|js|json|map|ttf|dart))$
static_files: Admin/web/\1
upload: Admin/web/(.+\.(htm|html|css|js|json|map|ttf|dart))$
login: admin
secure: always
- url: /(.+\.(htm|html|css|js|json|map|ttf|dart))$
static_files: Admin/web/\1
upload: Admin/web/(.+\.(htm|html|css|js|json|map|ttf|dart))$
login: admin
secure: always
- url: /(.+\.php)$
static_files: Admin/\1
upload: Admin\/(.+\.php)$
login: admin
secure: always
- url: /(.*)$
static_files: Admin/web/index.html
upload: Admin/web/(.*)$
login: admin
secure: always