ガソリンを給油する際、自分のサイトに置いたCGIのページを使って、走行距離、給油量、総走行距離を入力して燃費を記録している。また、オイル交換の際に総走行距離、オイルエレメントの交換の有無を記録している。これにより、オイル交換のタイミングもお知らせしてくれるというシステムを組んである。
ところが、先日、入力しようとしたら、ページが表示されなくなっていた(エラー表示となる)。
レンタルサーバーの管理画面を確認すると、新サーバーに移行したらしい。
もしかして、Perlのバージョンが新しくなって、何か問題が生じた?
CGIはPerlで書いたものだが、ずいぶん昔に書いたので、最新のバージョンでは使えない機能があるのかもしれない。そう思ってググってみたら、jcode.plが使えなくなったようだ。
たしかに、jcode.plを使っているCGIのページはエラーが出るが、jcode.plを使っていないCGIのページは問題なく表示される。
たぶん、このjcode.plが原因だろう。
さらに調べてみると、jacode.plを使えばよいらしい。
最新のjacode.plは、
https://metacpan.org/dist/Jacode/view/lib/jacode.pl
から、左側のDownloadをクリックして、ダウンロードしたファイルを解凍(Lhaplusを使えばよい)し、libフォルダ内のjacode.plをjcode.plの置いてあった場所にFTPアプリを使ってアップロードする。
CGIのファイルの
require ‘./jcode.pl’;
を
require ‘./jacode.pl’;
に書き換える。
これでちゃんと動くようになった。
めでたしめでたし。