初步評估

Restore test: injected fault during the restore, resumed after re-authorization

配方 20261112-restore-cut (restore-cut) · 最新一跑 2026-11-12 · 首次發布 2026-11-13 · 更新 2026-11-13 · Restore test

注入的故障

Injected fault: the check after write-back fails, and the first restore attempt also fails partway. The recovery station requests re-authorization; after re-authorization through the site owner consent page, the restore resumes.

出處:還原測試(在 WP119 測試主機上注入的故障),沒有論壇帖。

測試環境與弄壞後看到什麼

測試站:WordPress 7.1、PHP 8.3。下表是照配方弄壞之後,首頁與登入頁回的 HTTP 狀態。

主機環境首頁登入頁備註
Apache + PHP-FPM200500
Apache + php-cgi (mod_cgid)500500
Apache + mod_php200500
nginx + PHP-FPM500500

每一跑的結局

日期(UTC)主機環境連線模式修復費檔案與資料庫對照快照開案前加的留言維修站版本備註
2026-11-12Apache + PHP-FPMFTP全額退還Match except file ownersPresent2.1.460
2026-11-12Apache + PHP-FPMSSH全額退還Match except file ownersPresent2.1.460
2026-11-12Apache + php-cgi (mod_cgid)FTP全額退還Match except file ownersPresent2.1.460
2026-11-12Apache + php-cgi (mod_cgid)SSH全額退還Match except file ownersPresent2.1.460
2026-11-12Apache + mod_phpFTP全額退還Match except file ownersPresent2.1.460
2026-11-12Apache + mod_phpSSH全額退還DifferPresent2.1.460
2026-11-12Apache + mod_phpSSH全額退還Match except file ownersPresent2.1.460
2026-11-12nginx + PHP-FPMFTP全額退還Match except file ownersPresent2.1.460
2026-11-12nginx + PHP-FPMSSH全額退還Match except file ownersPresent2.1.460

缺口與修在哪一版

結果不是「Matches snapshot」,或注入的故障生效卻判修好的跑次,都在這裡:改了什麼、修在哪一版、重跑的日期與結果。

發現日主機環境連線模式改了什麼修在哪一版重跑
2026-11-12Apache + PHP-FPMFTPFound after the restore: file contents, permissions and the database matched the snapshot; the owner of the .htaccess file in the site root changed from the site account to the account PHP runs as. No change shipped yet.處理中—
2026-11-12Apache + PHP-FPMSSHFound after the restore: file contents, permissions and the database matched the snapshot; the owner of the .htaccess file in the site root changed from the site account to the account PHP runs as. No change shipped yet.處理中—
2026-11-12Apache + php-cgi (mod_cgid)FTPFound after the restore: file contents, permissions and the database matched the snapshot; the owner of the .htaccess file in the site root changed from the site account to the account PHP runs as. No change shipped yet.處理中—
2026-11-12Apache + php-cgi (mod_cgid)SSHFound after the restore: file contents, permissions and the database matched the snapshot; the owner of the .htaccess file in the site root changed from the site account to the account PHP runs as. No change shipped yet.處理中—
2026-11-12Apache + mod_phpFTPFound after the restore: file contents, permissions and the database matched the snapshot; the owner of the .htaccess file in the site root changed from the site account to the account PHP runs as. No change shipped yet.處理中—
2026-11-12Apache + mod_phpSSHFound after the restore: two rows in the options table differed from the snapshot, and the owner of the .htaccess file in the site root changed; the snapshot did not record which rows. A second run the same day differed only in that file owner. No change shipped yet.處理中—
2026-11-12Apache + mod_phpSSHFound after the restore: file contents, permissions and the database matched the snapshot; the owner of the .htaccess file in the site root changed from the site account to the account PHP runs as. No change shipped yet.處理中—
2026-11-12nginx + PHP-FPMFTPFound after the restore: file contents, permissions and the database matched the snapshot; the owner of the .htaccess file in the site root changed from the site account to the account PHP runs as. No change shipped yet.處理中—
2026-11-12nginx + PHP-FPMSSHFound after the restore: file contents, permissions and the database matched the snapshot; the owner of the .htaccess file in the site root changed from the site account to the account PHP runs as. No change shipped yet.處理中—

補充

Runs from the acceptance testing of version 2.1.460 on 2026-11-12, on the small test site. Before each case, two problems were planted on the test site so that the case reaches write-back; the first table shows the HTTP status after that step. Payment in these runs is simulated; the recovery fee column shows the refund the system recorded for that payment. Two further attempts ended before the health check because no recovery station could be created; the health check fee was refunded and the site was not changed. They are not restore tests.

這些是我們測試主機上、某一版、某一天的紀錄,不是對任何網站結果的承諾;其他主機、PHP 與 WordPress 版本的結果可能不同。

初步評估 →