先週からメールフォームの不具合に悩まされ、その途中で、他のCGIである、掲示板、クイズ選手権、タイプ選手権が稼働していないことも発覚した。
途中、文字化けに完全に暗誦に乗りあげかかったが・・・・

その全容が判明した。メールフォームの文字化けに関しては、前回報告したように最新のCGIに差し替え、HTMLのタグの言語設定を変更することにより、解決した。しかし、他に稼働しなくなったCGIの掲示板、日記、等多数そのままであった。
時間もないことだし、ダメ元で,サーバ管理会社のサポートへ問い合わせを行った。もしかして回答もこないどころか何日もかかるのかと思いきや・・・当日の夜回答があった。その内容は、
サポートからの回答の抜粋は、
ご利用のアカウントを確認しましたところ、新環境移設メンテナンスの対象として既に移設作業が完了したアカウントとなっておりました。
該当のCGIについて確認したところ、perlのパスが以下のように記述されておりました。 #!/usr/local/bin/perl
新環境移設メンテナンスの完了後はperlの仕様に変更があり、新環境サーバーではperl5.10と5.30の両方が使用できるようになります。
perlの各バージョンはCGIプログラム冒頭に記載のパス(シバン)により指定され、今回移設に伴ってperl5.30として処理されるようになったことがトラブルの原因である可能性がございます。
お手数ですがサイトに使用されているCGIについてはすべてのパスを以下バージョン5.10の記述に変更の上で改善がみられないかご確認いただきますようお願いいたします。 #!/usr/bin/perl
簡単にまとめると プログラムの上記の部分のlocalを削除すればよいとのことである。 今朝、稼働してないCGIを変更すると何と稼働するようになった。
【一連のトラブル・不具合の全容が解明した。時系列も含め、以下の通りである】
1.2月上旬にサーバの環境移転が行われ自分のデータファイルも移転された。(それまでは全てのCGIが稼働していた)
→ この段階で、perl5.30として処理されているCGIが稼働しなくなっていた。メールフォームはもちろん稼働しなくなっていた
2.2月下旬に、たまたま稼働しなくなっていたメールフォームを使う機会があり、送信時にエラーが出た。(実際は、設定変更のパスさえ変更すれば正常に作動するはずだった)
→ メールフォームを最新のCGIに差し替えた。(これは新しいサーバ環境に対応していた)しかし、このCGIは古いのと違って言語設定が違い、自分のサーバの言語設定とことなり、今度は文字化けが起こった。HTMLの言語を修正すると文字化けもなくなった。






Users Today : 10
Users Yesterday : 52
This Month : 171
This Year : 4217
Total Users : 39695
Views Today : 2292
Total views : 93794
Who's Online : 1