
ホームページがPHPで動いているか確認する方法。外から分かること、中に入らないと分からないこと
はじめに
「うちのホームページって、PHPを使っているんですか?」
2026年10月のPHPの脆弱性の騒ぎで、この質問を何度も受けました。お答えするために「使っているサーバーの管理情報を教えてください」とお願いすると、ここで話が止まります。契約書が見つからない、制作会社の名義で契約していて自社には何も届いていない、担当していた人がもう会社にいない。ようやく出てきたと思ったら、社長の頭の中にだけあった、ということもありました。
私は静岡県富士市でWeb制作とシステム開発をしています。この記事では、自社のホームページがPHPで動いているかを外から見分ける手順と、外からでは分からないこと、そしてサーバーに入って初めて見つかったものの話を書きます。読み終えるころには、自分で確かめられる範囲と、制作者に頼む範囲の線が引けるようになるはずです。
なお、ここで書く手順は、自社のホームページを確かめるためのものです。
この記事のまとめ
- 外から見分ける手がかりは3つ。URLや表示の痕跡、技術構成を表示するブラウザの拡張機能、ブラウザの検証ツール
- 外から分かるのは「PHPやWordPressを使っていそうか」まで。PHPのバージョンは出ないことが多く、出ても修正が当たっているかまでは判断できない
- 外から見てPHPが無さそうでも、問い合わせフォームの送信だけPHPで動いていたり、旧サイトやWordPressの残骸が残っていたりする。これはサーバーに入らないと見つからない
- 分かる人がいなくなるのは、人事異動で設備の引き継ぎが途切れるのと同じ仕組み。防ぐには台帳を一枚作っておく
- 外から見た結果だけで「うちは関係ない」と決めない。自分で確かめるのは外側まで、中を見るのは制作者に頼む
なぜ「PHPを使っているか」が分からないのか?
サーバーやPHPは、制作のときに一度決めたきりで、その後は意識する機会が無いからです。
ホームページは、公開してしまえば毎日表示されます。裏側で何が動いているかを知らなくても、困ることはまずありません。だから発注した側が「うちはPHPかどうか」を知らないのは、むしろ普通のことだと思っています。
問い合わせをいただいた先で、情報が出てこなかった理由はさまざまでした。制作時の書類が制作会社の手元にしか無い。サーバーの契約が制作会社の名義で、お知らせも請求も自社には届かない。契約した担当者がすでに退職している。契約したのは社長本人で、忙しくてなかなか捕まらない。どれか1つではなく、複数が重なっていることもありました。
あなたの会社では、サーバー会社の名前と契約の名義を、今すぐ言えますか。言えなくても責めるつもりはありません。ただ、言えない状態のままだと、今回のような騒ぎが起きるたびに、確かめるところから始めることになります。
外から見分ける3つの手順
サーバーの情報が手元に無くても、公開されているページから分かることはあります。手がかりは3つです。
手順1:URLと表示の痕跡を見る
ページのURLが .php で終わっていれば、そのページはPHPで動いています。たとえば contact.php や index.php のような形です。ただし、最近のサイトはURLから拡張子を消していることが多いので、.php が無いからといってPHPを使っていないとは言えません。
WordPressには、分かりやすい痕跡があります。ページ上の画像を右クリックして「新しいタブで画像を開く」を選び、そのURLに /wp-content/ が含まれていれば、WordPressで作られたサイトです。WordPressはPHPで動くので、この時点でPHPを使っていると分かります。
手順2:技術構成を表示するブラウザの拡張機能で調べる
Wappalyzer(ワッパライザー)というブラウザの拡張機能を入れると、いま開いているページが、どのCMS(コンテンツ管理システム)やプログラミング言語で作られているかを一覧で表示してくれます。2026年10月時点で、Chromeウェブストアから無料で入れられます。自社のサイトを開いて拡張機能のアイコンを押すだけなので、専門知識は要りません。
私も、他社が作ったサイトの相談を受けたときは、まずこの拡張機能でざっと当たりを付けます。ただ、表示されるのは「検出できたもの」だけです。サイト側の設定で痕跡を隠している場合や、使い方が特殊な場合は、PHPを使っていても表示されません。「検出されなかった」は「使っていない」と同じではない、と覚えておいてください。PHPのバージョンが一緒に表示されることもありますが、出るかどうかはサーバーの設定しだいです。
手順3:ブラウザの検証ツールでページの中身を見る
もう少し踏み込むなら、ブラウザに最初から入っている検証ツールを使います。Chromeならページの上で右クリックして「検証」を選びます。「ネットワーク」のタブを開いてページを読み込み直し、一番上の行を選んで「ヘッダー」を見ると、サーバーが X-Powered-By: PHP/... のように名乗っていることがあります。表示されない設定のサーバーも多いので、無くても判断はできません。出ないのは、サーバー側がわざと隠している状態です。攻撃する側に手がかりを渡さないための設定で、私が納品するサイトでもそうしています。出ないことは、手入れされている証拠でもあります。
同じ検証ツールで、問い合わせフォームの送信先を見ることもできます。ページ上のフォームの上で右クリックして「検証」を選ぶと、<form action="..."> という行が見つかります。この送信先が .php で終わっていれば、そのフォームはPHPで動いています。
ここまでで分かるのは、「PHPやWordPressを使っていそうか」までです。PHPのバージョンは、サーバーが名乗る設定になっていればWappalyzerにも表示されますが、隠しているサーバーのほうが多く、出ないことのほうが普通です。出たとしても、今回のような脆弱性の修正が当たっているかまでは、番号からは判断できません。バージョンの確かめ方と、誰が修正を当てるのかは、「PHPの脆弱性、うちのホームページは大丈夫?」と聞かれて、制作者が最初に確かめたことに書いています。
外から「PHPではない」と見えても、安心できないのはなぜか?
サーバーに入らないと見つからないものがあるからです。
私がサーバーに入って見つけたのは、たとえば次のようなものです。ページはHTMLだけで作られているのに、問い合わせフォームの送信だけPHPで動いていた。公開中のサイトとは別の場所に、リニューアル前のWordPressがそのまま残っていた。公開中のサイトの中に、使われなくなったPHPのファイルが残っていた。
これらは、公開されているページを外から見ても分かりません。拡張機能にも出ませんし、フォームの送信先が別の仕組みに見えるように作られていることもあります。旧サイトの残骸に至っては、どのページからもリンクされていないので、知らなければ存在に気づきようがありません。
OUTSIDE VS INSIDE
外から分かることと、中に入らないと分からないこと
外から分かる
URLが .php で終わるページがあるか
画像のURLに /wp-content/ があるか(WordPressの痕跡)
拡張機能が検出したCMSと言語
フォームの送信先が .php か
分かるのは「使っていそうか」まで。バージョンは出ないことが多く、修正の有無は分からない
中に入らないと分からない
HTMLのサイトで、フォームの送信だけPHPで動いている
リニューアル前のWordPressが、別の場所に残っている
使われなくなったPHPのファイルが残っている
誰も把握していないことが多い。見つけたら消すか、必要なら直す
外から「無さそう」と見えても、中に残っていることがある
PEAS PROJECT
WordPressを使っていない静的なサイトでも、問い合わせフォームの送信にPHPを使うことは珍しくありません。フォームの送信先がPHPなら、そのサイトはPHPで動く部分を持っています。「うちはHTMLだから関係ない」と思っていた会社ほど、ここを見落としやすいと感じています。逆に言えば、フォームの送信を外部のフォームサービスなどに寄せれば、サイト全体をPHPと無関係にできます。PHPのために確かめる対象が1つ減るので、HTMLのサイトなら制作会社に相談する価値があります。
残骸のほうは、もう少し厄介です。リニューアルのとき、古いサイトを消さずに別の場所へ退避したまま、誰も覚えていない。公開中のサイトからはたどれないので、普段は何の害もありません。ただ、古いWordPressやPHPのファイルは、放置されている間に脆弱性だけが増えていきます。入口が残っていれば、そこから攻撃を受けることもあり得ます。リニューアルをしたことがあるなら、旧サイトをいつ、どこから消したかを制作会社に聞いてみてください。「退避してある」という答えなら、消す日を決めておくところまでが対策です。他社が作ったサイトを引き継いだときに実際に見つかったものは、他社が作ったWordPressサイトを引き継いだら、想像以上に危険な状態だった話にも書きました。
こうしたものを見つけたとき、私は事実をそのままお伝えしたうえで、要らないものは削除し、必要なものは直す、という処理をしています。どちらにしても、見つけるところまでが仕事の半分です。見つかるまでは、誰も把握していないことがほとんどでした。
設備の引き継ぎで学んだ、「分かる人がいない」が起きる仕組み
ホームページの構成が分からなくなるのは、会社の中で設備の引き継ぎが途切れるのと同じ仕組みだと思っています。
化学メーカーの研究開発部門にいたころ、分析機器のメンテナンスで困ったことが何度かありました。装置を導入した担当者が人事異動でいなくなり、引き継ぎが十分にされないまま時間が経つ。手順書はあるにはあるものの、作ったきり更新が止まっていて、いざ使おうとすると現物と合わない。結果として、その装置を扱えるのは特定の人だけ、という属人化が起きていました。
メンテナンスが必要になったとき、やったことは順番に3つです。まずメーカーに問い合わせる。それで分からなければ、異動した前任者に連絡を取る。それでも手がかりが無ければ、残ったメンバーで一から再検討する。最後の手段に行くほど、時間も手間もかかりました。
ホームページでも、同じことが起きます。サイトを作った制作会社が「前任者」です。制作会社と連絡が取れるうちは、聞けば分かります。けれど担当者が変わったり、制作会社の事業が縮小したりすると、問い合わせ先そのものが無くなります。そうなると、サーバーに入って中を見て、一から構成を確かめるしかありません。私が残骸を見つけてきたのは、だいたいこの段階です。
防ぎ方も、設備と同じです。分かる人がいるうちに、分かっていることを書き残しておく。手順書と同じで、作るだけでなく、変えたときに更新することまで含めて、です。
自分で確かめることと、制作者に頼むことの線引き
外から見た結果だけで「うちはPHPではないから関係ない」と決めてしまうのが、一番避けたい結末です。
ここまで読んで、自分で調べて済ませたくなった方もいらっしゃると思います。拡張機能で何も出なかった、URLに .php が無かった、だから大丈夫。この判断は、問い合わせフォームの送信や残骸を見落とします。正直に言うと、私も外から見ただけでは断言できません。断言できるのは、サーバーに入って中を見たあとです。
線を引くなら、こうなります。自分で確かめるのは、外から見える範囲と、手元の書類です。サーバー会社の名前、契約の名義、URLや拡張機能で分かること。ここまでは専門知識が無くてもできますし、ここが分かっているだけで、制作者に相談したときの話がずっと早く進みます。
一方、中を見る作業は、サーバーに入れる人に頼んでください。フォームの送信がどう動いているか、残骸が無いか、PHPのバージョンがいくつで修正が当たっているか。これは制作会社や保守を任せている会社の仕事です。契約が切れていても、問い合わせれば見てくれる会社は多いですし、他社が作ったサイトを見る制作者もいます。
今日から作れる「自社サイトの台帳」6項目
今回の騒ぎで一番感じたのは、情報が無いこと自体より、どこにあるかを誰も知らないことのほうが問題だ、ということでした。台帳と呼ぶほど大げさなものでなくて構いません。次の6項目を、一枚にまとめておいてください。
- サーバー会社の名前と、契約の名義。請求メールや制作時の契約書から分かります。制作会社名義なら、その旨も書いておきます
- CMSの有無。WordPressなどを使っているか、HTMLだけのサイトか
- PHPを使っている箇所。サイト全体か、問い合わせフォームの送信だけか。分からなければ「未確認」と書いておき、制作者に確かめてもらいます
- PHPのバージョン。WordPressなら管理画面のサイトヘルスで分かります。サポートがいつ終わるかは、PHP 8.2のサポートが年末で終わる。バージョンアップの手間と費用は何で決まるのかにまとめています
- 保守の担い手と連絡先。保守契約があるなら相手の会社名と、PHPの管理が契約に含まれているか。無いなら、困ったときに最初に連絡する先
- リニューアル前の旧サイトの行き先。消したのか、どこかに退避してあるのか。退避してあるなら、消す予定日
分析機器の手順書で学んだとおり、作ることより、変えたときに書き換えることのほうが難しいです。サーバーを移したとき、リニューアルしたとき、制作会社が変わったとき。その都度この一枚を直すルールにしておけば、次に同じような騒ぎが起きたときの最初の一歩は、ずっと早くなります。
まとめ
- 外から見分ける手がかりは、URLの
.phpや/wp-content/、技術構成を表示するブラウザの拡張機能、検証ツールで見るヘッダーとフォームの送信先の3つ - 外から分かるのは「使っていそうか」まで。バージョンは出ないことが多く、修正の有無は外からは判断できない
- 外からPHPが無さそうに見えても、フォームの送信だけPHPだったり、旧WordPressの残骸が残っていたりする。中に入らないと見つからず、誰も把握していないことが多い
- 分かる人がいなくなる仕組みは、設備の引き継ぎが途切れるのと同じ。防ぐには、分かるうちに一枚の台帳に残し、変えたときに更新する
- 自分で確かめるのは外側と手元の書類まで。中を見る作業は、サーバーに入れる人に頼む
「うちはPHPを使っているの?」という質問に、その場で答えられる会社は多くありません。答えられなくても構いませんが、答えを探す場所だけは決めておいてください。
私は静岡県富士市でWeb制作とシステム開発をしています。他社が作ったサイトでも、サーバー会社の名前がうろ覚えの段階からでも構いません。中を見て、何がどこで動いているかを確かめ、この記事の台帳を一緒に作る「サイトの棚卸し」もお受けしています。お問い合わせからどうぞ。