404 Not Foundになった理由
ブラウザのキャプチャを見たら原因がわかりました。
photo credit: EᴚROR 264/365 via photopin (license)
Not Foundが発生
お客さんの社内のユーザーが、新たにWebシステムを利用しようとしたら、Not Foundが発生したと連絡がありました。Webシステムに接続できていないのではないか?ともメールに書かれていました。
Not Foundが表示されたのなら、なんらかのWebサーバーには接続できているはずです。
存在しないファイルを指定してNot Foundを発生させたブラウザの画面キャプチャをメールで送って、同じようにお客さんの社内ユーザーの画面キャプチャを送ってもらうことにしました。
見えない文字がついている
お客さんの社内ユーザーのブラウザの画面キャプチャが届いたので見ると<span style="font-size: 200%">Not Found</span> The requested URL /ã‹ã‚‰ was not found on this server. Apache/2.X.XX PHP/5.X.X Server at www.exmaple.com Port 80
という感じで表示されていました。
最後に表示されている、エラーを表示したサーバーのドメイン名は、利用したいWebサーバーと一致していたので、接続はできています。
The requested URL の後が文字化けのようなになっているので、ブラウザのURL入力欄の「/」の後になんらかの文字が入っているようです。
画面キャプチャを見る限りは、ブラウザのURL入力欄には、「/」の後に文字は入力されていないようでした。
メールシステムが原因と推測
なぜこんなことが起きたのかヒントがないかと、画面キャプチャを改めて確認しました。画面キャプチャは、ブラウザ全体をキャプチャされていたので、他のタブもタイトルだけはわかりました。
見ていると、Web上で利用できるメールシステムのタブもひらかれているようでした。
そこから、メールでWebシステムのURLが連絡されて、メールシステム上でURLをクリックすると、「/」までではなく、その後に書かれていた文字もURLとして扱われたために、ブラウザではNot Foundになったのではないかと推測しました。
文字を消してもらう
一見すると「/」の後に文字はないようですが、文字があるはずなので、「/」まで文字を消してから再度試してもらうように連絡すると、無事に利用できたとのことでした。画面キャプチャが送ってもらえたので、Webシステムの問題ではないことが即座に把握でき、原因も推測できました。