【解決】コアサーバー(XREAサーバーも)で突然cgiで500エラーが出た

500 Internal Server Error

今回の記事は、コアサーバーでcgiで500エラーが出たときの備忘録です。

使ってるサーバーの1つにコアサーバー(coreserver)があるんですが、2022年5月23日にリニューアルを実施したため、これの影響で500 Internal Server Errorが出たんだと想像します。

追記:
XREAサーバーもシステムの増強と移行があり、その影響で同様にエラーが出る場合があります。と言うか、出ました。

「リニューアルにおけるサーバーシステムの増強と移行について」
https://www.xrea.com/info/brandnew2022.php

XREAサーバーでInternal Server Errorが出た場合も、下に書いてる方法で直りましたのでご参考ください。

結論から先に書けば、cgiファイル内に記載されている読み込みファイルのjcode.plが原因だったようで、jacode.plに変更して解決しました。

コアサーバーのcgiで500エラー解決の順番メモ

jacode.plのダウンロード

jacode.plのダウンロードはこちら

ダウンロード先サイトの左メニュー、Toolの下にダウンロードリンクがある。
jacode.plのダウンロードサイト

圧縮ファイルを解凍

ダウンロードファイルは圧縮されているので、解凍。
フォルダ内を探って行くと、[lib]内にjacode.plがある。
libフォルダ内にjacode.plがある

jacode.plをサーバーにアップロード+作業ごにょごにょ

解凍して見つけたjacode.plを、サーバー上のcgiやjcode.plと同じ階層にアップロードする。

次に、各cgiファイル内に記載されている
require ‘./lib/jcode.pl’

require ‘./lib/jacode.pl’
のように書き換える。
※cgiファイルが複数ある場合は、それぞれ書き換える。

もしくは、

  1. cgiファイルと同じ階層にあるjcode.plのファイル名を一旦違うファイル名にリネーム
    例)jcode.pl.old
  2. jacode.plをサーバーにアップロード後、jcode.plにリネーム

でも良いと思います。
後者の場合は、cgiファイル内の記載を書き換えなくても良いので、こちらのほうが楽かもしれませんね。※後者のほうは試してませんのでダメなら前者で対応してみてください。

追記:後者のほう(jacode.plをサーバーにアップロード後、jcode.plにリネーム)でもうまくいきました。

コアサーバーで突然cgiで500エラーが出たかたは1度おためしください。

コメント

  1. はるみち より:

    同様に500エラーで悩んでいましたがお陰様で無事解決しました。
    ありがとうございました。

    • peaceful-work より:

      はるみちさん、解決できて良かったです。コメントいただけるなんて感謝です。こちらこそありがとうございました。

  2. まさ より:

    500エラーが出てましたが、こちらのブログを拝見させていただいて、解決しました。
    有難うございます(^^♪

    • peaceful-work より:

      まささん、解決できて良かったです。記事がお役にたったこと、こちらも嬉しいです。

  3. よし より:

    XREAに置いてあるホームページで、アクセスカウンター、ダウンロードカウンター、フォームメールでエラーが出て困っていました。
    jcode.plの差し替えで解決しました。
    ありがとうございました。m(_._)m

    • peaceful-work より:

      よしさん、解決したとのコメントありがとうございます。
      お役に立てたなんて、記事書いてよかったなと思いました。
      メールも頂いていましたね。重ねて感謝いたします。
      これからも、少しでもお役立ち記事を書いていきますので、よろしくお願いいたします。

  4. 匿名 より:

    差し替えただけで解決しなかった場合は、全てのファイルの全てのrequire文を見直して、ファイル名の頭に「./」を入れないといけないことがあるみたいです。

    • peaceful-work より:

      コメントありがとうございます。

      > 差し替えただけで解決しなかった場合は、全てのファイルの全てのrequire文を見直して、ファイル名の頭に「./」を入れないといけないことがあるみたいです。

      そうなんですね。知らなかったです。他のサイトでも同様の問題が出た時に、この方法で解決したのでOKかと思ってました。
      ファイル名の頭に「./」を入れないといけない⇒相対パスを見直すということですね。
      入れないといけないことがあるみたい⇒うーん、ややっこしいですね。
      勉強になります。

    • たきがは より:

      >全てのファイルの全てのrequire文を見直して、ファイル名の頭に「./」を入れないといけない

      ここ、もう少し詳しく教えていただけないでしょうか?
      require文に「./」を入れたのですが、
      require “$EST{temp_path}sitemap.html”;
      のようなところにも必要なのでしょうか? それ以外のところに入れてもエラーが
      解決しないのですが…
      yomi-searchさんの方でアップデートが行われておりませんで、ほとほと困り果てております。

      • peaceful-work より:

        当方の場合は、require文に「./」を入れなくてもうまくいったので、たきがはさんの症状には当てはまらないのかもしれませんね。

        「./」を入れる方法はやっていません、ごめんなさい。

        > 追記:後者のほう(jacode.plをサーバーにアップロード後、jcode.plにリネーム)でもうまくいきました。

        こちらの方法は試されましたか?

        • たきがは より:

          早々のお返事、ありがとうございます。

          1 jacode.plに書き換える
          2 jacode.plをjcode.plに書き換える
          3 require ‘***’ を全て require ‘./***’に書き換える

          まで試しましたが、500 Internal Server Errorが出続けてます。

          require “$EST{temp_path}sitemap.html”にも「./」を入れるとなると
          yomi-searchを諦めようかと思うレベルでして…

          xreaのサイトも見たんですが、「5.26に合わせてね」って書いてあるだけでして…

          • peaceful-work より:

            たきがはさんが行われた作業

            1 jacode.plに書き換える
            2 jacode.plをjcode.plに書き換える

            この1と2の作業が実際よくわからないのですが、下記の順番で作業されましたか?

            1.jacode.plの圧縮ファイルをダウンロードして解凍
            2.解凍した中のjacode.plをサーバーにアップロード(jcode.plと同じ場所に)
            3.元々のjcode.plをリネーム(例:jcode.pl.old)
            4.jacode.plをjcode.plにリネーム

            この方法の順番でダメなら申し訳ありません。わたしには手がおえません。

  5. たきがは より:

    長々とお付き合いいただきまして、ありがとうございました。
    書かれてるとおりの順番です(1~4)。

    その後、「jcode.pl」と書かれてるところを全部「jacode.pl」に変えましたが駄目で
    「require」で始まる「jacode.pl」に「./」をつけて駄目で
    「require」の変数の入ってないところ全部に「./」をつけましたが駄目でした。

    いい検索エンジンだったんですが素人にはここらが限界のようです。
    色々とありがとうございました。

    • peaceful-work より:

      たきがはさん、当方、プログラムには強くありませんので、歯がゆくお役に立てず申し訳ない気持ちです。

      どこかのサイトに解決策が書いてあり修正できることをお祈りいたします。
      こちらこそ、コメントいただきありがとうございました。

タイトルとURLをコピーしました