チップス

ロリポップ(チカッパ) perlのcgiが500エラー


とりさんです。

perl で書かれたアプリケーションをロリポップの
チカッパ・プランのレンタルサーバにインストールしようと
したら

ERROR 500 INTERNAL SERVER ERROR...

と表示され、途方に暮れていました。

googleで検索したら、同じような境遇の方々が沢山いました。

パーミッションが違う

とか

perl への path が /usr/bin/perl or /usr/local/bin/perl
だとか、色々とネットに書かれていました。

原因は改行コードでした

ロリポップはLinux系サーバなので、perlで書かれたソースの
改行コードを「LF」に変更したら、無事に動作しました。

OSによって改行コードが違うのが原因でした。

Windows CR+LF (\r + \n)
Mac CR (\r)
Unix LF (\n)

linuxを使っている場合は

 nkf -w -Lu --overwrite hogehoge.cgi

で改行コードをLFに変更。
Windowsを使っている方は、TeraPadでCGIファイルを開き、「ファイル」→「文字/改行コード指定保存」を実行して、改行コードを「LF」で指定します。

参考URL
●->CGI でなぜか perl のパスが通らないとき


   チップス