昔使っていた古いCGIを設置して使おうとしたんだが何故か上手く動かない……。CGIへのパスもパーミッションの設定もあっている……なぜだ…? おかしい……。そんなときに思いつく原因と解決策を自分用としての備忘録メモとして残しておきます。
パスがあっているかどうかの確認
まずは基本中の基本。サーバーのアップデートなどで以前のときとCGIへのパスが以前と変わっている場合もあるので一応確認しよう。
パーミッションがあっているかどうかの確認
これも基本中の基本なので、各ファイルや各フォルダのパーミッションがちゃんとあっているかどうか確認しよう。意外とパーミッションの設定を気づかずに間違っている場合が多い。
サーバーのエラー情報を調べる
CGIを実行してみて動かなかったら、まずはサーバーが出力しているエラーログを見て見よう。大抵はサーバーがエラー情報を出力しているはずなので、そのエラー情報をみれば動かない理由と原因がほぼわかる。もしサーバーの設定でエラーログを出力しない設定にしていたら、エラーログを出力するようにしてから、エラーログの中身を確認してみよう。
[sc name=”adsenseAd”]
Jcodeに対応しているかどうか調べる
昔は動いてたCGIが何故か動かないときはこのパターンが多いかも。新しいサーバーやサーバーの仕様が更新(アップデート)されたりすると古いJcodeに対応していないことが多い。そんなときは、CGIのソースの中の記述でJcodeの部分をjacodaに書き換え、jacodaをネット上の信頼のおける場所から拾ってきて、サーバーにアップロードすることで再び使うことができる。
今回の自分場合、昔は動いてたCGIが何故か動かなくなった原因はこれだった。しかし、CGIのソースの中のJcodeを参照している部分を書き換えるので、ある程度知識がある人でないと直せないよなぁ。