Projeto: Vermelho

logs of development
<< 特定のブロックレベル要素のみもしくはその中のインライン要素のみを修飾する | main | テンプレートエンジンamrita2のインストール >>
スポンサーサイト

一定期間更新がないため広告を表示しています

| - | | - | -
(2)No such file or directory: exec of '/var/www/cgi-bin/test.rb' failed
実行結果のWEBページが真っ白になったりするとき、
$cat /var/log/httpd/error_log
でLinuxのlogを見てみると、タイトルにあるようなエラーが出ていることがある.

原因の候補は三つ.


  1. 該当のファイルが存在しない

  2. プログラミング言語へのパスが間違っている
    $which ruby
    を実行してパスを確認してみる

  3. 改行コードがサーバサイドのOSに合っていない


  4. 3番目が厄介だ.
MacOS(CR(¥r))とWindows(CR(¥r)+LF(¥n))とUnix(Linux)(LF(¥n))では、改行コードが異なる.改行コードは、通常、表示されないので、意図しないエラーが出る.
たとえば、Windowsでコーディングしたファイルを、LinuxにFTPアップロードして動作させたとき、改行コードが¥r¥nのままになっていると、エンコードが失敗したことになり、Linuxでエラーになる.

FTPクライアントのアップロード時にASCIIにて送信するのは、送信と同時にコード変更も実施している.

CGI実行に失敗するようであれば、FTPの送信をASCIIにするか、それでもダメなら、変換ソフトでファイル全体のエンコードをサーバサイドに合致させる必要がある.
| Pg_Ruby_CGI | 18:06 | comments(0) | trackbacks(0)
スポンサーサイト
| - | 18:06 | - | -
コメント
コメントする









この記事のトラックバックURL
http://vermelho.jugem.jp/trackback/61
トラックバック