2026年10月、プログラミング言語 PHP の脆弱性による大規模な問題が発生しました。 この時、様々なサービスが一時停止に追い込まれる事態になりましたが、 私たちの使う PC やスマホには直接的な解決策はありませんでした。なぜだったのでしょうか。 これを理解するために、インターネットの仕組みを少し見てみましょう。
インターネット上での通信の基本的な仕組みの一つに「クライアント・サーバー」というものがあります。 クライアントとは多くの場合、私たちの PC やスマホのことを指します。 クライアントは、サーバーと呼ばれる別のコンピュータに要求を送ります。 するとサーバーがその要求に応じてデータを返すという形で成り立っています。
サーバーとは通常、物理的に離れた場所に存在する、役割が異なるコンピュータであり、 ディスプレイのない巨大なデスクトップ PC のようなイメージです。私たちの使うサービスを裏側で支えています。
PHP のセキュリティが問題になった際、対応しなければならなかったのはこのサーバー側でした。 理由は、PHP がインストールされて動いているのは、サーバー側のコンピュータの中だからです。 もう少し具体的な例を見てみましょう。
普段私たちが使っている PC やスマホの Web ブラウザからサイトを表示する時を考えてみます。クライアントである Web ブラウザに、サイトの URL を入力すると、サーバーへ要求が送られます。 これを「リクエストを送信する」等と言います。 サーバーはリクエストを受け取ると、データを準備して、表示できるような形にします。 PHP が活躍しているのは主に、この部分です。 その後、データはクライアントに返され、私たちの Web ブラウザで表示されます。
スマホや PC のアプリからサービスを利用する場合も、基本的な仕組みは同じです。 クライアントであるアプリがサーバーに要求を送り、サーバーがその要求に応じてデータを返します。 この時も、PHP などのサーバー側のプログラムがデータの準備や処理を行った後、クライアントに返されます。