* Add gnu static binary build support * Remove --libc option * configure ./build-static.sh to allow extension loading with glibc * use tabs everywhere * do not use prebuilt sources for glibc build * ffi does not work with musl builds * remove unnecessary tabs * disable opcache jit on musl * disable opcache jit on musl again * err, build command, not download command * cs fixes * spellcheck * even more cs fixes * fix ar removing .a libs * disable ffi extension for now * add gnu static action * add gnu-static target * skip CHECKOV 2 and 3 * rename static-builder to static-builder-musl, gnu-static to static-builder-gnu run arm64 gnu job on ubuntu-arm * rename build-linux to build-linux-musl * rename job description to specify musl * higher optimisation flags * Update docker-bake.hcl --------- Co-authored-by: DubbleClick <m@pyc.ac> Co-authored-by: Kévin Dunglas <kevin@dunglas.fr>
FrankenPHP: Современный сервер приложений для PHP
FrankenPHP — это современный сервер приложений для PHP, построенный на базе веб-сервера Caddy.
FrankenPHP добавляет новые возможности вашим PHP-приложениям благодаря следующим функциям: Early Hints, Worker режим, Real-time режим, автоматическая поддержка HTTPS, HTTP/2 и HTTP/3.
FrankenPHP совместим с любыми PHP-приложениями и значительно ускоряет ваши проекты на Laravel и Symfony благодаря их официальной поддержке в worker режиме.
FrankenPHP также может использоваться как автономная Go-библиотека для встраивания PHP в любое приложение с использованием net/http.
Узнайте больше на сайте frankenphp.dev или из этой презентации:
Начало работы
Docker
docker run -v .:/app/public \
-p 80:80 -p 443:443 -p 443:443/udp \
dunglas/frankenphp
Перейдите по адресу https://localhost и наслаждайтесь!
Tip
Не используйте
https://127.0.0.1. Используйтеhttps://localhostи настройте самоподписанный сертификат.
Чтобы изменить используемый домен, настройте переменную окруженияSERVER_NAME.
Автономный бинарный файл
Если вы предпочитаете не использовать Docker, мы предоставляем автономный бинарный файл FrankenPHP для Linux и macOS, включающий PHP 8.4 и большинство популярных PHP-расширений.
Для Windows используйте WSL для запуска FrankenPHP.
Скачать FrankenPHP или выполните следующую команду для автоматической установки подходящей версии:
curl https://frankenphp.dev/install.sh | sh
mv frankenphp /usr/local/bin/
Для запуска содержимого текущей директории выполните:
frankenphp php-server
Вы также можете запускать CLI-скрипты:
frankenphp php-cli /path/to/your/script.php
Документация
- Worker режим
- Поддержка Early Hints (103 HTTP статус код)
- Real-time режим
- Конфигурация
- Docker-образы
- Деплой в продакшен
- Оптимизация производительности
- Создание автономного PHP-приложений
- Создание статических бинарных файлов
- Компиляция из исходников
- Интеграция с Laravel
- Известные проблемы
- Демо-приложение (Symfony) и бенчмарки
- Документация Go-библиотеки
- Участие в проекте и отладка

