Как настроить Caddy & FrankenPHP на выбор каталога для файла, а затем возврат к другому местоположению?Php

Кемеровские программисты php общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Как настроить Caddy & FrankenPHP на выбор каталога для файла, а затем возврат к другому местоположению?

Сообщение Anonymous »

У меня есть существующее PHP-приложение, которое я встраиваю в новый образ Docker с помощью FrankenPHP, основанного на Caddy.
Вот мой Dockerfile. Но это не работает.
Я хочу, чтобы запросы от /api/[file.php] сначала выполнялись в /app/public/html/api/[ файл.php]. А если файл не существует, используйте /app/public/addons/[file.php].
Это кажется простой идеей, но я не могу ее понять. работать.
Я впервые использую Caddy и FrankenPHP. До этого я пытался заставить его работать с Nginx Unit, но безуспешно. Кажется, Unit здесь слишком ограничен. Похоже, Caddy и FrankenPHP смогут это сделать, но я не разобрался с синтаксисом.
Я бы не хотел возвращаться и пытаться разобраться с этим с помощью php-fpm.
Любые предложения приветствуются. Это просто очень старое приложение, и оно не поддерживает маршрутизацию всего через index.php. Он не использует никаких фреймворков.
:8080 {
log {
# Redact the authorization query parameter that can be set by Mercure
# format filter {
# request>uri query {
# replace authorization REDACTED
# }
# }
level DEBUG
}

root * /app/public/html
encode zstd br gzip

route /healthcheck {
respond "Server is up" 200
}

route /api/*.php {
@indexFiles file {
try_files html/{path} /app/public/addons/{path}
}

rewrite @indexFiles {http.matchers.file.relative}

@phpFiles path *.php
php @phpFiles
file_server
}

route {
# Add trailing slash for directory requests
@canonicalPath {
file {path}/index.php
not path */
}

redir @canonicalPath {path}/ 308

## If the requested file does not exist, try index files
@indexFiles file {
try_files {path} {path}/index.php
split_path .php
}

rewrite @indexFiles {http.matchers.file.relative}

# FrankenPHP!
@phpFiles path *.php
php @phpFiles
file_server
}
}


Подробнее здесь: https://stackoverflow.com/questions/790 ... hen-fallba
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Php»