Legacy PHP
Когда есть старый PHP-код, который нужно перенести ближе к Go-runtime или быстро проверить на совместимость.
Загрузите ZIP, проверьте проект в защищённом cloud terminal, запустите разрешённые команды php2go и скачайте готовый бинарник с логами, manifest и инструкцией запуска.
$ php2go report public/index.php
files=248 classes=91 functions=327 fallbacks=4
$ php2go compile --web --bin app-server public/index.php
stage=Analyze ok · stage=Codegen ok · stage=GoBuild ok
runtime linked · artifact sealed · limits charged
artifact ready: app-server-linux-amd64.zip
php2go Cloud закрывает путь от ZIP-архива до бинарника: без локальной настройки toolchain, без хаоса в командах и без ручного учёта лимитов.
Когда есть старый PHP-код, который нужно перенести ближе к Go-runtime или быстро проверить на совместимость.
Загрузили архив клиента, получили лог анализа, запустили сборку и отдали понятный артефакт.
Единый процесс сборки, лимиты нагрузки, история jobs и воспроизводимые команды.
ZIP проверяется на опасные пути, исполняемые расширения, zip-bomb и лишние файлы.
Пользователь видит разрешённые команды и запускает только сценарии php2go.
На выходе бинарник, логи сборки и понятный путь запуска без раскрытия внутренних путей сервера.
Jobs, платежи, инвойсы, нагрузка и тарифы остаются в админке.
Публичный demo-блок имитирует реальный terminal: команды, анализ, очередь worker-а и готовый артефакт. Полный интерактивный demo mode сделаем следующим отдельным блоком.
php2go report public/index.phpphp2go check public/index.phpphp2go deps public/index.phpphp2go compile --web --bin app-server public/index.php $ php2go check public/index.php
syntax ok · unsupported calls=0 · warnings=2
$ php2go compile --web --bin demo-server public/index.php
queued job #demo-1024 · worker picked
artifact manifest written · sha256 verified
download ready after registration
ZIP проекта сохраняется в изолированный workspace.
Пользователь запускает report/check/deps.
Команды проходят whitelist и лимиты нагрузки.
Готовый binary package скачивается ZIP-архивом.
Главная идея SaaS: принимать чужой код, но не давать ему выполнять что угодно. Поэтому команды, архивы, логи и артефакты проходят отдельные ограничения.
Разрешены только команды php2go, которые нужны для анализа и компиляции.
Защита от path traversal, zip-bomb, опасных расширений и секретных файлов.
История jobs, платежей, инвойсов и действий администратора остаётся в системе.
Можно продавать разовые компиляции, подписки или собственные тарифы из админки.
Положите исходники проекта в архив так, чтобы точка входа, например public/index.php, была внутри ZIP. Vendor/runtime можно настраивать отдельно.
Нет. Терминал принимает только whitelist-команды php2go: report, check, deps и compile.
ZIP с бинарником, логами и описанием запуска. Runtime и внутренние пути сервера пользователю не раскрываются.
Архивы проверяются до распаковки, команды ограничены, а runner запускается с лимитами. Для production дополнительно рекомендуется контейнерная изоляция.
Начните с бесплатного проекта или подключите платный тариф, когда понадобится больше лимитов.