【さくらサーバー】 php.cgiが大量のエラーログを吐き出す原因と解決法

さくらのレンタルサーバのアクセスログを見る場所では、エラーログを見ることができます。
エラーログとは、エラーが記録されたものです。

『 いつ 』『 どのIPが 』『 どんな理由で 』エラーを吐き出したのかと言うのが記録されています。

理由が詳しく出ているわけではないんですが、何となくの目安的な理由はわかるようになっています。

例えば、index.htmlがないとか、test.cgiは規制されているのでアクセスできなかっただとか言う感じのエラーです。

php.cgiが大量のエラーを吐き出しているのを発見

で、そんなエラーログを見た瞬間、私は大量のエラーログが吐き出されているのを発見しました。
しかも、ある特定のファイルです。
それは php.cgi です。

php.cgiが大量のエラーログを吐く理由を探してみたのですが、皆目検討がつきません。
php.cgiには、さくらのレンタルサーバーのPHPのコマンドパスが書かれているだけです。

「だとすると、PHPのコマンドパスを書いたので、読み込み先のPHPファイルを読み込むのに失敗してエラーが出るのかな?(・・ ? 」とか、「コマンドパスにしたからエラーが出たのであって、上の階層から現バージョンのPHPファイルダウンロードしてきて、直にアップロードしてきたらエラーは消えるかな?」とか、あれやこれや妄想をふくらませていたのでした。

でも、そのどちらも不正解でした。
実は、php.cgi自体がアクセス規制の対象だったのです。

でも、私はちゃんとPHPでincludeしたサイトを見れてるのでちゃんと動いてるには違いないし、Google Search Console では、Googleのクローラーはこんな風に認識しましたとか言って、ちゃんとクローラーが認識できていると表示されています。

しかも、私はphp.cgiをアクセス規制した覚えなんてありません。
だから、この理由にたどり着くのにかなりの時間がかかってしまいました。(´・_・`)


どうして自分は大丈夫なのにエラーログが出続けるのか?

さくらのレンタルサーバでは、危なそうな海外のIPアドレスからのアクセスを遮断してくれる便利機能があります。

遮断してくれるのは全部の海外IPじゃないです。
危なそうな海外のIPだけです。

この機能をONにしてあると、特定のファイルやフォルダや機能などは海外からのアクセスができなくなります。


ですので、危なそうなファイルphp.cgiをアクセス規制していたのは、私ではなくさくらレンタルサーバーだったのでした。
(国外IPアドレスフィルターをONにしていたのは私なので、私が規制していたようなものですが。( ̄m ̄))

php.cgiは非常に攻撃されやすいファイルなので、海外の危ない系のIPアドレスからはアクセスができないようにしてあるのです。

このように、php.cgiは自分が設置したファイルではあるのですが、名前が名前なだけにエラーログを吐き出す形になってしまいました。

私は国内からのアクセスなので、この国外IPのアクセス規制には引っかかりませんでした
そんなわけで、私は普通にファイルの閲覧ができましたし、アクセス制限も受けなかったと言うわけです。

恐らく、Google Search Console も大丈夫なIPとして認識されていたので、エラーにならずに読み込めていたのだと思います。


次ページ

【さくらサーバー】エラーログでphp.cgiエラーが出るのを止める方法

前ページ

【もはやDOS攻撃】 php.cgiでエラー出でまくりなのを発見

広告