500 Internal Server Errorのcgiエラーの対処方法

500 Internal Server Errorのcgiエラーの対処方法

  • 2017-10-14  最終更新日:2018-07-12

久しぶりにcgiのフォームを使いました。昔はよくフォームならcgi(perl)だったのですが最近はほとんどワードプレスのプラグインだけで行うことが多くなりましたがまだ少なからず対応する機会があるかと思います。

昔からよく使っていたのがpostmail.cgiです。かなり使い慣れているので今までは特に問題なかったのですが最近使った時にエラーが出てしまって解決までに時間がかかったので対処方法を載せておきます。


スポンサーリンク


500 Internal Server Error

よくあるのがファイルパーミッションの間違いでエラーになるパターンです。基本的に700、705、755のいずれかになるかと思います。設定ファイルは666、604に設定するようになっていますがほぼほぼ700系を使います。777は絶対使っちゃだめです。

あとはperlのパスなんですが【/usr/bin/perl】または【/usr/local/bin/perl】のどちらかですね。

だいたいこれでうまくいくはずですが、これでも500エラーが出る場合がありました。

解決策

結論から言うとどうも改行コードがうまく行っていないようでした、CGIファイルの改行コードがサーバにあっていないことでエラーが出てしまっていた模様。” #! “ は「シェバング」といわれるようでその行がある1行目の行にパスが記載されています。

なぜか#!/usr/bin/perl -wと記載したらうまくいきました。

オプション
-w : アラートを出す
-d : デバッグモードにする
-c : 文法チェック
-v : バージョンの表示、スクリプトの実行はされない

これを参考にしました⇒文法チェッカー

ただ#!/usr/bin/perl --(ハイフン2つ)だけでもうまくいったのでおそらく改行コードが原因だということでした。

キャリッジリターン (CR:Carriage Return) とラインフィード (LF:Line Feed)という改行コードが有り、主に「CR+LF」(Windows形式)「LF」(Unix形式、Mac OS X)「CR」(古いMacOS形式)となっており古いMacで編集する場合はこのあたりを気をつけないといけないということです。

改行コードが「CR」だとエラーになります。

現在のMac OS X / macOSは「LF」ですから問題はないですが古いファイルを編集するときには注意が必要ですね。

エディタとかで改行コードを設定できる物があればそれを使って編集するのが良さそうです。CotEditorはオススメです。

MIXHOST

mixhostサーバーだと以下のようなエラーがでます。

lscgid: execve():〜〜〜: No such file or directory

どうも一行目のパスが全然違うようです。以下のように記載しないとだめみたい。

#!/usr/bin/perlml

パス一覧ではそんなこと書いていなかったのに。。。。

参考になれば幸いです。


∞Tadashi Suyama∞

cgi perl error 500
  • このエントリーをはてなブックマークに追加
  • follow us in feedly

サイト内検索

最近の投稿

アイキャッチ
WordPress内でFTP操作ができるプラグインFile Managerのご紹介

今回はワードプレスプラグインFile Managerのご紹介です。これはどんなプラグインかと申しますと、ダッシュボードにFTPソフトが入ったようなプラグインです。FTPソフトがなくてもワードプレ...

26 Nov 2018

アイキャッチ
WordPressでPHPの値をJavaScriptファイルへ渡す方法

今回はワードプレスの値をJavaScriptに渡す方法です。ワードプレスからじゃなくてPHPからJavaScriptへ値を渡す方法もご紹介します。 PHPの値をJavaScriptで処理を行う...

22 Nov 2018

アイキャッチ
アイキャッチ画像がない場合に記事内はじめの画像をアイキャッチにする方法とリンク先画像取得-WordPress

今回はワードプレスのアイキャッチです。記事内はじめの画像を取ってくる方法は結構出回っているので、リンク先の画像を撮ってくる方法をプラスしたやり方になります。 記事内はじめの画像を取得する方法は...

10 Nov 2018

アイキャッチ
豊富で魅力的な画像素材サイトPxBee

画像素材サイトのご紹介です。Pxbeeというfotor提供のサイトです。1枚から購入ができて金額もお手頃です。普段はアドビのアドビストックを利用していますが検索したときの画像の量が多い気がします...

06 Nov 2018

アイキャッチ
Caffeineの代替えにAmphetamine

強制的にスリープさせないようにするアプリAmphetamine【アンフェタミン】なんですが、名前の由来はアメリカでは注意欠陥・多動性障害の薬として使われており、日本では覚醒剤に指定されているよう...

25 Oct 2018

著者

ウェブエンジニアのSUYAMAのブログです。

WEBに関することや個人的に関心のあることについて書きます。主に技術系ブログです。

タグクラウド

cgi perl error 500
フッターイメージ