kensaurus

フィールドノート · レガシー移行

止めずに、少しずつ新しくする。古いPHPシステムのアップグレード

作った人がいない、テストがない、サーバーを触るのが怖い。そんな古いPHPのシステムを、止めずに一段ずつサポート中のバージョンへ上げ、必要なら新しい構成へ移す進め方です。

櫻元賢次 · kensaurus合同会社 ·

こんなシステムを引き受けます

2026年10月の php2shell のように、古いPHPには修正版そのものが出ないことがあります。PHP 8.2 のサポートも2026年12月31日で終わります。

進め方

一度に全部を作り直すことはしません。動いているシステムを止めずに、一段ずつ、毎回確かめながら進めます。

1. 棚卸しと、いま必要な手当て

本番で動いているPHP、フレームワーク、ライブラリのバージョン、サーバーの構成、外部とのつながりを一覧にします。そのうえで、公表済みの脆弱性に当たるものを洗い出し、今すぐ必要な修正版の適用や設定の変更を行います。

お渡しするもの:現状の一覧、危ない順に並べたリスク、行った手当ての記録。

2. 安全網をつくる

直す前に、今の動きを記録します。主な画面と処理(ログイン、注文、決済、管理画面の更新など)が今どう動くかを自動テストに残し、バックアップと元に戻す手順を実際に試し、本番と同じ構成の検証環境を用意します。

お渡しするもの:今の動きを確かめるテスト、試した戻し方の手順、検証環境。

3. サポート中のバージョンへ上げる

PHP 8.3 か 8.4 へ、フレームワークとライブラリも合わせて上げます。一度に上げるのは一段だけで、そのたびにテストを流し、検証環境で画面を見比べてから本番に出します。

お渡しするもの:段階ごとの変更の記録、それぞれの戻し方。

4. 必要なところだけ、新しい構成へ移す

アップグレードで足りるなら、ここで終わりです。画面の作りが限界に来ている、機能を足すたびに壊れる、といった部分があれば、そこだけを新しい構成(たとえば Next.js の画面と API)へ移します。古い仕組みと並べて動かし、切り替えは機能ごと、一部の利用者からです。

お渡しするもの:移した部分のコードと手順、切り替えの記録。

そのあと:見張る

更新のあとに出る不具合をいち早く見つけるため、エラーと、利用者が感じた不具合の報告を集めます。ここでは自社のオープンソース Mushi Mushi を使います。

やらないこと

ご相談の形

費用は、最初の棚卸しのあとに段階ごとにお見積もりします。

kensaurus について

kensaurus合同会社は、東京・渋谷の小さな開発会社です。予約と決済、会計、AIを使う機能をもつ自社のサービスやアプリを10以上、自分たちで作って運用しています(展示室で見られます)。AIのコーディングエージェントも使いますが、この仕事での変更は、すべてテストと見比べで確かめてから本番に出します。

ご相談は、下のリンクからメールでどうぞ。いま動いているPHPのバージョンがわかれば、書き添えてください。

kensaurus について