CGI-BBS > SO−HO > ショッピングバスケット > 「逸品即決」で「サーバーの内部エラー」が出ます


カレッヂ
カレッヂ


質問者 上西将文  投稿日 5/8(水) 19:26:42
 はじめまして。
 当方の会社の販売用ウェブページにて、ショッピングバスケット「逸品即決」を使おうと、とりあえずテスト用のページを作ってみました。

http://www.perican.co.jp/fishing/megabass/giantdogx/seller.cgi

 ところが、動作テスト用に、「買い物」をして、「買い物かご」の画面になり、「申し込み」に名前や住所などを入力して、「送信」のボタンを押したところ、「サーバーの内部エラー:サーバで内部エラーまたは設定エラーが発生したため、リクエストに対する処理を完了できませんでした 」という画面になってしまいます。
 無効なメールアドレスを入力したまま「送信」を押すと、警告の画面に正常に移行しますし、買い物かごに入れた物は、ちゃんと更新された商品一覧で売れた扱いになり、買い物かごでもすでに売れたという警告が出て、「selled.cgi」にも売れた履歴はちゃんと書き込まれています。

 sendmailなどのコマンドパスの指定を間違えているのかと思ったのですが、利用しているレンタルサーバー(http://www.anm-1.com/)のCGI設置の説明を見ても、間違っていませんでした。

 原因は何が考えられるでしょうか。
 助言をお願いします。
回答者 呑兵衛@大阪  [削除]  投稿日 5/12(日) 20:51:02
メール送信部分のサブルーチン内で、どこかの値が null になったため、と思います。
サーバーエラーの表記は、 Internal Server Error が一般的ですが、サーバー設置者によりまちまちです。

ことに送信先メールアドレスに null(値がない) が入ると sendmail が処理できないため
Internal Server Error が返ります。 またサーバーによっては 差出人などヘッダー部分のどれかが未記入(null)の場合でも、
Internal Server Error になる設定もあるようです。

メール送信部分を再検証してみてください。
質問者 上西将文  [削除]  投稿日 5/24(金) 19:12:25
 解答ありがとうございました。
 しかしながら、逸品即決以外にも、SENDMAILを使うものをいろいろと、使用しているレンタルサーバーで試したのですが、どうも上手くいきませんでした。
 こちらの方で、サーバーの運営会社と相談しながら、しばらく調べてみます。
回答者 呑兵衛@大阪  [削除]  投稿日 5/26(日) 01:28:02
多分、ですが、nkf の問題ではないかと推察します。nkfはサーバーに組み込まれていますので、
ユーザー側から設定を変更することができません。多分、バージョンが古いのでは。
ユーザー側でできることは、sub sendmail の2バイト文字をすべて jcode.pl でjis変換させ、
パイプ処理されている $nkf -j を取るとうまく行くと思います。
jis変換させる方法は、他のスクリプトに多くありますので、そちらを参照して対処してください。

返信(回答)する


Web裏技