Hacktoberfest 2026: những issue maintainer đã đánh dấu cho tháng Mười, đang mở và phù hợp người mới. Xem issue Hacktoberfest

Worker Mode regression in 1.13.0: Nextcloud worker fails to reach frankenphp_handle_request()

Đã đóng
#2,697 0 bình luận 0 reaction 0 người được giao Xem trên GitHub

Maintainer thường phản hồi trong vòng 1 ngày

Một pull request liên quan đã được merge.

  • #2701 của @dunglas — đã merge

Đánh giá

Độ khó
4/5
Thời gian dự kiến
3-5 ngày
Mức phù hợp với người mới
48/100
Loại issue
Lỗi
Độ rõ ràng
Khá rõ ràng
Mức độ hoạt động
Sôi nổi
Công nghệ
go, php
Lĩnh vực
backend, devtools

Hướng nghiên cứu

Start by comparing the worker initialization path between FrankenPHP 1.12.7 and 1.13.0; the issue does not identify specific source files or tests. Reproduce with the provided Nextcloud worker configuration and PHP ZTS 8.4.26, then inspect startup logs to locate where the worker fails to reach frankenphp_handle_request(). Done means the same configuration starts successfully on 1.13.0.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Mô tả

bug
What happened?

After upgrading FrankenPHP from 1.12.7 to 1.13.0, an existing Nextcloud Worker Mode configuration no longer starts.

FrankenPHP 1.13.0 fails during worker initialization:

loading new config: frankenphp app module: start: failed to initialize workers: too many consecutive failures: worker /var/www/nextcloud/index.php has not reached frankenphp_handle_request()

Downgrading only FrankenPHP to 1.12.7 immediately restores normal operation with the same Nextcloud installation, PHP ZTS version and Caddyfile.

Environment

Debian 13, amd64

Nextcloud 35.0.1

PHP ZTS 8.4.26

php-zts-cli: 8.4.26-2

php-zts-embed: 8.4.26-2

Working: FrankenPHP 1.12.7

Failing: FrankenPHP 1.13.0

FrankenPHP 1.13.0 package: 1.13.0+php84-1

Caddy bundled with 1.13.0: 2.11.7

Package source: pkg.henderkes.com

Package SHA256: 3388c67c70f5de50e01270fa853ca6f688370fe094541d058b046489d228c792

frankenphp version for the failing package:

FrankenPHP v1.13.0 PHP 8.4 Caddy v2.11.7 h1:yj0Y4fYZGPkSvibBJ1sTWE33xC0fxztVyXEW5iIdUT4=

Caddyfile

{
frankenphp {
num_threads 17
max_threads 32
}
}

https://cloud-franken.domain.local {
bind 192.168.168.168
root * /var/www/nextcloud

tls /etc/frankenphp/tls/fullchain.crt /etc/frankenphp/tls/cloud-franken.key

encode zstd br gzip

php_server {
    worker {
        file /var/www/nextcloud/index.php
        num 8
        env MAX_REQUESTS 500
    }
}

}

Reproduction

With exactly the same configuration:

FrankenPHP 1.12.7 + PHP ZTS 8.4.26-2 -> works
FrankenPHP 1.13.0 + PHP ZTS 8.4.26-2 -> worker initialization fails
FrankenPHP 1.12.7 + PHP ZTS 8.4.26-2 -> works again after downgrade

With 1.13.0:

ExecStartPre=/usr/bin/frankenphp validate --config /etc/frankenphp/Caddyfile
(code=exited, status=0/SUCCESS)

ExecStart=/usr/bin/frankenphp run --environ --config /etc/frankenphp/Caddyfile
(code=exited, status=1/FAILURE)

Status: "loading new config: frankenphp app module: start: failed to initialize workers: too many consecutive failures: worker /var/www/nextcloud/index.php has not reached frankenphp_handle_request()"

PHP ZTS and Nextcloud initialize correctly independently:

sudo -u www-data php-zts /var/www/nextcloud/occ status

returns Nextcloud 35.0.1 with maintenance: false and needsDbUpgrade: false.

An Argon2id password_hash() / password_verify() test on PHP ZTS 8.4.26 also succeeds.

The failure is therefore reproducible by changing only FrankenPHP from 1.12.7 to 1.13.0.

Please let me know if debug-level startup logs or additional diagnostics would help.

Build Type

deb packages

Worker Mode

Yes

Operating System

GNU/Linux

CPU Architecture

x86_64

PHP configuration
phpinfo() output
PHP 8.4.26 ZTS
php-zts-cli 8.4.26-2
php-zts-embed 8.4.26-2

memory_limit = 1024M

opcache.enable = On
opcache.memory_consumption = 256
opcache.interned_strings_buffer = 32
opcache.max_accelerated_files = 20000
opcache.validate_timestamps = On
opcache.revalidate_freq = 60
opcache.jit = disable

realpath_cache_size = 4096K
realpath_cache_ttl = 120

session.save_handler = files
session.save_path = /var/lib/php/sessions
session.use_cookies = On
session.use_only_cookies = On
session.use_strict_mode = Off

Loaded extensions include:
apcu, bcmath, bz2, curl, gd, gmp, imagick, intl, ldap,
mbstring, openssl, pdo_pgsql, pgsql, redis, sodium, zip
Relevant log output
Relevant log output

Ngôn ngữ chính
Go
Star
11.4k
Fork
494
Merge trung bình
2 ngày 23 giờ
Pull request đã merge (30 ngày)
28

Chuẩn bị môi trường

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của php/frankenphp

Tất cả issue của php/frankenphp

Issue tương tự

Thêm issue về Go

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.