Next.jsと従来PHPサイトの比較|違い・移行の判断基準・費用感

アイキャッチ — アクセスのたびにサーバーでページを組み立てる従来PHPサイトと、事前に生成したページをCDNから配る構成の対比を表した図

「10年前に作ってもらったPHPのサイトがある。そろそろ作り直すべきか」というご相談は、定期的にいただきます。レンタルサーバーにPHPファイルを直接置き、制作した会社とはすでに連絡が取れない——そんな状態のサイトは、実際に数多く残っています。

先に申し上げると、動いているサイトを慌てて捨てる必要はありません。ただし、放置してよいわけでもありません。古いPHPサイトには「見た目の古さ」よりも深刻な、目に見えない問題が溜まっていることが多いためです。

この記事の結論

従来PHPサイトとNext.jsの本質的な違いは、ページを「アクセスのたびにサーバーで組み立てる」か「事前に作っておいて配るだけ」かです。会社案内のように内容が頻繁に変わらないサイトなら、後者のほうが速く、攻撃される面も小さくなります。移行を急ぐべきサインは見た目ではなく、サーバーのPHPバージョンが古いまま更新されていないこと。逆に、社内で更新できる体制があり、PHPも保守されているなら、急いで移行する理由はありません。

この記事では、両者の仕組みの違いから、速度・セキュリティ・保守性・費用感、そして「全面リニューアルせず一部から移す」段階移行の考え方までを整理します。なお、WordPressとNext.jsの比較はWordPressとNext.jsの違いで扱っているため、本記事はCMSを使っていない、素のPHPで手組みされたサイトを軸に解説します。


目次

仕組みの違い:その都度生成か、事前生成か

従来のPHPサイトは、訪問者がアクセスするたびに、サーバー上でPHPが動いてHTMLを組み立てて返します。10人アクセスすれば10回、同じページを作り直しています。

Next.jsで主流の構成は逆で、ページを公開時に一度だけ生成しておき、できあがったHTMLを配信網(CDN=世界中に置かれた配信サーバー)から配るだけにします。アクセス時にサーバーで処理をしないため、速く、負荷にも強くなります。

従来PHPサイトNext.js(事前生成構成)
ページの作られ方アクセスのたびにサーバーで生成公開時に事前生成し、配るだけ
表示速度サーバーの処理速度に依存生成済みのため速く安定
アクセス集中サーバーが詰まると全体が遅くなるCDNが受けるため影響が小さい
攻撃される面サーバー上でプログラムが常時動く実行環境が表に出ない
サーバー費用レンタルサーバー代(月数百〜数千円)小規模なら無料枠で収まることが多い
更新の仕方ファイルを直接編集してアップロード仕組みによる(後述)

この「その都度生成か、事前生成か」という軸自体はNext.js固有の話ではありません。考え方の全体像は静的サイトと動的サイトの違いで詳しく解説しています。

図解 — 訪問者のアクセスごとにサーバーがHTMLを組み立てて返す従来PHP構成と、事前生成したHTMLをCDNから直接返すNext.js構成の流れを並べた図
図解 — 訪問者のアクセスごとにサーバーがHTMLを組み立てて返す従来PHP構成と、事前生成したHTMLをCDNから直接返すNext.js構成の流れを並べた図

古いPHPサイトの本当のリスクはバージョン放置

見た目が古いことは、実は大きな問題ではありません。深刻なのは、サーバーで動いているPHPのバージョンが、サポートの切れた古いまま放置されていることです。

PHPには公式のサポート期限があり、期限を過ぎたバージョンには、セキュリティ上の欠陥が見つかっても修正が提供されません。PHP 5系や7系のサポートはすでに終了していますが、古いレンタルサーバー直置きのサイトでは、こうした旧バージョンのまま動き続けているケースが珍しくありません。

「動いているから大丈夫」が通用しない領域です

サポート切れのPHPは、欠陥が公開されても直されない状態で外部に公開され続けます。改ざんや踏み台化の被害は、サイトの規模や知名度に関係なく、機械的な探索で古い環境から順に狙われます。問い合わせフォームなどPHPで動く仕組みがあるなら、まずサーバーの管理画面でPHPバージョンを確認してください。

ここで難しいのは、単純にバージョンを上げると、古いコードが動かなくなる場合があることです。書き方の仕様が変わっているため、10年前のコードをそのまま新しいPHPで動かすと、エラーで止まることがあります。「上げたいが上げられない」——これが古いPHPサイトの典型的な袋小路です。

事前生成の構成に移すと、この問題は構造ごと消えます。配信されるのは生成済みのHTMLだけで、訪問者からアクセスできる場所でプログラムが動いていないためです。守るべきサーバーそのものが表からなくなる、と考えると分かりやすいと思います。


保守性:属人化した手組みコードからの脱出

古いPHPサイトのもうひとつの問題は、直せる人がいなくなっていることです。当時の担当者の書き方で組まれたコードは、外部の資料もテストもなく、少しの修正でも解読から始まります。「ヘッダーの電話番号を変えるだけなのに全ページのファイルを開いて回る」といった状態は、手組みPHPサイトの典型です。

Next.jsに移すと何が変わるかというと、共通部分(ヘッダー・フッターなど)を部品として一箇所で管理でき、修正が全ページへ反映される構造になります。また、広く使われている作法に沿って書かれるため、特定の個人ではなく「Next.jsを扱える制作者なら誰でも」引き継げる状態に近づきます。

ただし、正直に補足すると、Next.jsも万能ではありません。

Next.js自体も更新が続くフレームワークで、数年放置すれば「古いNext.js」になります。違いは、利用者が多く情報と引き継ぎ先が豊富なこと、そして事前生成の構成なら仮に更新を怠っても、公開中のサイトが直接攻撃される面が小さいことです。「放置しても安全」ではなく「放置したときの被害が構造的に小さい」と捉えてください。

更新頻度の観点も重要です。事前生成の構成では、内容を変えるたびに再生成(ビルド)の工程が挟まります。お知らせを社内で頻繁に更新したい場合はCMSとの組み合わせが必要になり、その設計次第で費用も変わります。このあたりの構成の選び方はNext.jsでコーポレートサイトを作るメリットで詳しく解説しています。

図解 — 全ページに同じヘッダーを個別に書いた手組みPHPの構造と、共通部品を一箇所で管理して各ページへ反映するコンポーネント構造の対比図
図解 — 全ページに同じヘッダーを個別に書いた手組みPHPの構造と、共通部品を一箇所で管理して各ページへ反映するコンポーネント構造の対比図

費用感:制作費とランニングコストを分けて考える

費用は「移行時にかかるもの」と「毎月かかるもの」を分けると整理しやすくなります。

移行時移行後のランニング
制作費ページ数・機能により幅が大きい
サーバー費用事前生成構成なら無料〜少額で収まることが多い
ドメイン移管または設定変更(既存のものを継続利用)年数千円程度(現状と同じ)
保守依頼するか、更新頻度が低ければ都度対応も可

制作費は、既存サイトのページ数、フォームなどの機能、原稿を流用するか書き直すかで大きく変わるため、この記事で断定的な金額は書きません。目安として押さえていただきたいのは次の2点です。

  • 見た目をそのまま移すだけでも、ゼロからの制作に近い工数がかかること。古いコードは再利用できず、実質的に作り直しになるためです
  • ランニングコストは下がることが多い一方、移行時の制作費で回収に数年かかること。「サーバー代が安くなるから」だけを理由にした移行は、計算が合いません

移行の価値は費用削減よりも、前述のセキュリティリスクの解消と、直せる人がいる状態を取り戻すことにあります。


段階移行:全面リニューアルせず一部から移す

「全ページ一括で作り直し」は、費用も意思決定も重くなります。実務では、一部のページから段階的に移す選択肢があります。

入口はトップページと主要ページだけでも成立します

たとえば、トップページ・サービス紹介・会社概要など主要な数ページだけを新構成で作り、残りの古いページは当面そのまま残す進め方です。訪問者の大半が見るページから順に、速度とセキュリティの改善効果を得られます。ドメインを変えずに、ページ単位で新旧の構成を共存させる設計は技術的に可能です。

段階移行で気をつけるべきは、URLと検索評価の引き継ぎです。既存ページのURLが変わる場合は、旧URLから新URLへの転送設定(リダイレクト)を漏れなく行わないと、検索経由の流入を失います。サーバーやサイトを移す際の手順と注意点はサーバー・サイト移転の手順ガイドにまとめています。

また、問い合わせフォームだけが古いPHPで動いている場合、そこが残っている限りセキュリティ上の懸念も残ります。段階移行の計画では、PHPが動いている箇所を先に洗い出し、リスクの高い部分から移す順番をおすすめします。

図解 — 古いPHPサイトの全ページのうち、主要ページから順に新構成へ移し、最終的にPHP実行部分をなくしていく段階移行のステップ図
図解 — 古いPHPサイトの全ページのうち、主要ページから順に新構成へ移し、最終的にPHP実行部分をなくしていく段階移行のステップ図

移行しなくてよいケースもあります

すべての古いサイトが移行すべきとは考えていません。次の条件に当てはまるなら、現状維持も合理的な判断です。

  • サーバーのPHPが現行のサポート対象バージョンで動いており、更新も継続されている
  • サイトを更新できる人が社内または取引先にいる
  • フォームなどの動的な仕組みがない、または外部サービスに任せている
  • サイト経由の問い合わせ・売上がほとんどなく、投資対効果が見込めない
  • サーバーのPHPバージョンがサポート切れ、または確認する方法が分からない
  • 制作会社と連絡が取れず、直せる人がいない
  • 表示が明らかに遅く、スマートフォンでレイアウトが崩れている
  • 問い合わせフォームが古いPHPプログラムのまま動いている

上段に全て当てはまる場合、Next.jsへの移行は「いつかやってもよいこと」であって、今の優先課題ではありません。下段が複数当てはまる場合は、リニューアルの見た目の話より先に、リスクの棚卸しから始めることをおすすめします。


よくある質問

PHPのサイトは時代遅れなのでしょうか?

PHP自体は現在も開発が続く現役の言語で、WordPressをはじめ多くのサイトが動いています。問題なのはPHPであることではなく、サポートの切れた古いバージョンのまま、直せる人がいない状態で放置されていることです。適切に保守されているPHPサイトを、流行を理由に作り直す必要はありません。

今のサイトのPHPバージョンは、どうすれば確認できますか?

レンタルサーバーの管理画面に「PHPバージョン設定」の項目があることが多く、そこで確認できます。管理画面に入れない・契約情報が分からない場合は、その状態自体が最初に解消すべき課題です。現状のURLをお知らせいただければ、外から確認できる範囲でリスクの有無をお伝えできます。

移行するとき、今のドメインやメールアドレスはそのまま使えますか?

使えます。ドメインは移行後も継続利用でき、URLが変わるページには転送設定を行うことで検索評価も引き継げます。注意が必要なのはメールで、サーバーを解約するとメールも止まる契約があります。移行計画の初期に、メールがどのサーバーで動いているかを必ず確認してください。

社内にエンジニアがいなくても、Next.jsのサイトを運用できますか?

運用できますが、設計次第です。お知らせやブログを社内で更新したい場合は、管理画面から編集できる仕組み(CMS)を組み合わせる前提で設計する必要があります。更新がほとんど発生しないサイトであれば、変更時のみ制作者へ依頼する運用でも十分成立します。「誰が・何を・どのくらいの頻度で更新するか」を先に決めてから構成を選ぶことが重要です。


まとめ

従来PHPサイトとNext.jsの違いは、突き詰めると「アクセスのたびにサーバーでページを組み立てるか、事前に作って配るだけか」の違いです。そして移行判断の起点は、見た目の古さではなくリスクの有無にあります。

  • 深刻なのはデザインではなく、サポート切れPHPの放置と「直せる人がいない」状態
  • 事前生成の構成は、速度だけでなく攻撃される面を構造的に小さくする
  • 費用対効果は「サーバー代の削減」ではなく「リスク解消と保守性の回復」で測る
  • 全面リニューアルが重ければ、主要ページからの段階移行という進め方がある
  • 保守が行き届いているサイトなら、急いで移行する必要はない

まずは現状把握からで構いません。今お使いのサイトのURLをお送りいただければ、外から確認できる範囲でリスクの有無と、移行するとしたらどの範囲からが現実的かを整理してお伝えします。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次