レンタルサーバーで perl のバージョンアップで jcode.pl エラー
レンタルサーバー会社から(大規模リニューアル)の事前連絡がありました。
最新のOS、システムに対応、パフォーマンスの最適化、セキュリティの強化、新機能の追加とのアナウンスで、各種プログラムもバージョンアップされます。
従前 リニューアル後
PHP 7.1 + FastCGI + OPcache + APCu PHP 7.4 + FastCGI + OPcache + APCu
(5.3/5.4/5.5/5.6/7.0 FastCGI選択可) (5.6/7.0/7.1/7.2/7.3/8.0/8.1FastCGI選択可)
Perl 5.16系 Perl 5.26系
現在、当院のサイトで利用しているプログラムは、PHP5.3 Perl5.16 ですので、リニューアルに備えておかなければいけません。
特に、Perl バージョンが上がると jcode.pl が古いファイルなのでCGIが動作しなくなるとの情報も気になっていました。
〇 事前にやった事
当院では自宅サーバーも運用していて、PHP7.2 Perl5.26 で動作しています。
1、事前に当院のサイトをそっくり自宅サーバーに構築してみて動作試験をしてみたところ、問題なくブログもCGIも動作しました。
2、レンタルサーバーサイトでリニューアル前にPHPバージョンを従前サーバー上限の7.0まで上げて動作確認したところ問題なくブログは動作しました。
3、CGIに付いては、自宅サーバーで同じバージョンで動作したので レンタルサーバーのリニューアルを待つだけと思っていました。
〇 メンテナンス後
1、当日午前9時までのメンテナンスで、その後ブログは動作しましたが CGIは(500 Internal Server Error)で動作しません。
2、同じバージョンのPerlプログラムなのに何故にエラーなの? 事前に調べていた jcode.pl を疑い jcode.pm や jacode.pl の代替ライブラリに変えることに。
3、jacode.pl 2.13 を入手、当院サーバーの jcode.pl を jcodeold.pl とリネームして、jacode.pl をアップロードして そのファイルをjcode.pl とリネームして無事に動作しました。が、
4、その後、CGIの文字化けが有ることに気が付き、CGI自体の設定をいろいろと変更してみるものの改善されず。
5、結局、jcode.pl 2.8を入手、jacode.pl と差し替えて動作確認。文字化けも改善されました。