本日からWinサーバへ移設予定だったCGIがコピー中に破損したらしく、急遽古いファイルからバックアップしたら動作しなくなった。 5時間ばかり格闘し、漸く突き止めた原因はファイルロックに用いたSymlink関数だった。そういや「シンボリックリンクがサポートされてないプラットフォームではエラーになる」とあったな。今までnix系でしか動かしてなかったから忘れてたけど、最初にこの手法を学んだKENT WebのCGIにも「Win鯖で動かすときは使えない」と注意書きがあった筈。 そもそもバックアップの管理がきちんとしていれば起きなかった事故ではあるので詰めの甘さに反省しきりだが、再発防止と同じような目に遭った人への情報提供を兼ねてここへ記しておくものである。 ついでに調査手法、というほどの代物でもないが一応。 最初に出たエラーは「CGI Error」だったので文法に問題があるものとPerl文法チェッカ