Эта страница была переведена сообществом и не обязательно является актуальной. Обратитесь к справочной версии.
Эта страница была переведена сообществом и не обязательно является актуальной. Обратитесь к справочной версии.
Эта страница была переведена сообществом и не обязательно является актуальной. Обратитесь к справочной версии.

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 или из этой презентации:
В Windows используйте WSL для запуска FrankenPHP.
Скопируйте и выполните эту команду в терминале, чтобы автоматически установить подходящую версию для вашей платформы:
curl https://frankenphp.dev/install.sh | sh
Если вы предпочитаете не использовать Docker, мы предоставляем автономные статические бинарные файлы FrankenPHP для Linux и macOS, включающие PHP 8.4 и большинство популярных PHP‑расширений.
Установка расширений: Наиболее распространенные расширения уже включены. Устанавливать дополнительные расширения невозможно.
Наши мейнтейнеры предлагают rpm‑пакеты для всех систем с dnf. Для установки выполните:
sudo dnf install https://rpm.henderkes.com/static-php-1-0.noarch.rpm
sudo dnf module enable php-zts:static-8.4 # доступны 8.2–8.5
sudo dnf install frankenphp
Установка расширений: sudo dnf install php-zts-<extension>
Для расширений, недоступных по умолчанию, используйте PIE:
sudo dnf install pie-zts
sudo pie-zts install asgrim/example-pie-extension
Наши мейнтейнеры предлагают deb‑пакеты для всех систем с apt. Для установки выполните:
sudo curl -fsSL https://key.henderkes.com/static-php.gpg -o /usr/share/keyrings/static-php.gpg && \
echo "deb [signed-by=/usr/share/keyrings/static-php.gpg] https://deb.henderkes.com/ stable main" | sudo tee /etc/apt/sources.list.d/static-php.list && \
sudo apt update
sudo apt install frankenphp
Установка расширений: sudo apt install php-zts-<extension>
Для расширений, недоступных по умолчанию, используйте PIE:
sudo apt install pie-zts
sudo pie-zts install asgrim/example-pie-extension
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.
FrankenPHP также доступен как пакет Homebrew для macOS и Linux.
brew install dunglas/frankenphp/frankenphp
Установка расширений: Используйте PIE.
Для запуска содержимого текущего каталога выполните:
frankenphp php-server
Также можно запускать CLI‑скрипты:
frankenphp php-cli /path/to/your/script.php
Для пакетов deb и rpm можно запустить сервис systemd:
sudo systemctl start frankenphp