レンタルサーバ引っ越し後、PerlCGIが動かなくなる。

いまだにPerlを使っている

1998年に作ったPerlをイントラシステムとして未だに社内で使っている。ファイルのタイムスタンプ等をみてみると、午前4時やら5時やら。苦労自慢ではないが、その時代は昼も夜も、平日も休日も無かった。とにかく必死だった。思い出すだけでも辛くて泣きそうになる。そのお陰で体を壊す羽目になったので、決して過労を助長しているわけではないのだが、今の働き方は少し、緩すぎるというかホワイト過ぎるという意見もあるぐらい、編集後記でぶちまけたように、ゆとり教育と同じレベルにあるのじゃないかとふと考える事が多い。

閑話休題

さて、幾度となくレンタルサーバを変更し、その度に絶対パスやユーティリティーの有無等、プログラムの微調整を余儀なくされてきた。今回もその類の微調整が必要だったのだが、現在主流のPHPがその代わりとなり、かれこれ5年以上Perlに触れていなかったので、対応するのに手間取った。

変更箇所

大体、変更が必要なのは以下の項目

  1. Perlの絶対パス指定 #!/usr/bin/perl 等の先頭行に挿入するPerl実行モジュールパス指定
  2. euc、SJIS、utf-8等のOS、プラットフォームに合わせた文字コードの変更
  3. use lib、require等で指定するライブラリ、モジュールの有無
  4. SendMailの使用可否と文字コードの取り扱い
  5. cgi実行ファイル自体の属性

等々・・・。

今回は、①、②の確認と修正を行い、今回のCGIスクリプトはメールを使っていなかったので④は飛ばしていた。

でも動かない

カンが鈍っているというか、年相応の頭の回転の鈍りもあり、新幹線でいうとのぞみがひかり、こだまになった感は否めない。

そろそろ、この辺りは世代交代せねばと思いつつも、出来る人材が居なかったりする訳で、足らないに加えて教育の手間暇とその効果の問題がある。なぜならそこまで需要があるかというとそうでもない訳で、朽ちて消え去る言語の宿命。まぁ、新しい言語で組んでもらえればいいだけか。

それにしても、何度このメッセージをみて落胆した事か。それにしても頭が回らん。

現象としては、ポータルサイト部分だけが動かず、その先のコンテンツは動いたりする。その差が判らずに暫く悩む。

原因1

FTPのファイルを眺めて気が付いた。親ディレクトリは755の実行権限が付いていたのに、いつの間にか644の参照のみ権限に変わっていた。恐らくは、ローカルからアップした時に、サーバ上のファイルを一旦決してアップし直したかなんかでアップファイル属性のデフォルトに戻っていた。早速、属性を振り直す。

原因2

それでも動かない。ジーっと動くソースと動かないソースを見比べる。

動くソースは、文字コード変換ライブラリのrequire 'jcode.cgi';がコメントアウトされている。

あれ?なんでここだけコメントアウトが外れているのか、記憶が全くないのだが、恐らくは前回の同じくレンタルサーバ変更時、ライブラリの使用可否試行錯誤をおこなっていた残骸で、その時点ではまだ使えていたライブラリだったが、使わなくてもソース自体の文字コードをEUCに変換する事で文字化けせず実行できていたので両方のバージョンが混在していたと言事らしい。今回は、このモジュールが使えなくなっていたのでエラーとなってしまっていた。

このコメントアウトをポータルサイトのスクリプトにも適応する事で無事動いた。

考察

それにしても、元号が変わってもまだ使えるLinux系のプログラムは恐ろしいほど利用価値があると思う。しかも、オープンソースと言う商売抜きの方がはるかに誠実性と確実性の高いシステムが出来上がっている。これは一体どういう事なのだろうかと私の中で未だに理解と整理ができていない。

編集後記:一寸にも足らない戯言

近年の物価高に加え、青天井の予定増税等による生活困窮、インボイスや電帳法の強制、脆弱マイナンバーの宣伝費用懸念等、生活不安要素に対して完全無視を貫くの政府に対するストレス過多。そして、働き方改革という名の「さぼり」を助長する政策によって、労働意欲、意識低下よる業務効率の低下、業績悪化、景気低迷、更には、それに便乗した治安体制の薄れからくる犯罪の増加が顕著。

ブロークンウインドウ理論は既知の通りで、かの暗殺事件以来、日本の治安は急激な悪化が見て取れる。これを、全て自然現象、国民の責任として無策放置すると、今までの平和ボケした国民性の裏返しとして、某国のような取り返しのつかない位に急激に犯罪等が日常化する可能性が高いと言える。けして右を助長しているわけではないが、元々、国民性として軍国主義以前の日本は、だらしのない極東と揶揄される人種だったのだから。

宜しければ、シェアお願いします。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA