「ご注文の確定」でのInternal Server Error 500 が解決。
追記:2010/4/20
いつの時点からか「注文完了時のメールが届かない」とのご報告をいただいたので、再び SMTP → sendmail に設定を戻しました。今度は Internal Server Error 500 は発生せず、メールも無事届いています。
—
以前「原因不明のInternal Server Errorが「ご注文の確定」ボタンクリックで発生。」という記事を書きましたが、とりあえず解決したのでメモ。
その後、新規インストールを行ってエラーが出なくなったので良かったと思っていたら再発。集中的に調べてみると、原因は「メールの設定」にありました。
結論から書くと、「メール送信 – 接続方法」を、sendmailではなくsmtpにしました。これで解決。トホホ…
解決の糸口の糸口は、こちらのZen Cart本家のフォーラムの書き込みにありました。同じ原因かどうかはわかりませんが、書き込みの中で「メールの送信方法を変えてみろ」とあって気づきました。注文完了時に行われる処理の1つは、注文者と管理者にメールが送信されること。今まではsession関連か共有SSLを使っているからかと思い込み、いずれも簡単には探ることができずに、あても無くさまよっていたのですが。。。
「解決した」といっても、じゃあなぜsendmailだとエラーが出るのかは分かっていません。同じサーバで同じデータベースにある同じバージョンのZen Cart、テンプレートもほぼ同じ(ドメインは別)ショップではまだエラーが出ていないんです。そうすると、それこそ原因はZen Cart側ではなくて、このドメインのsendmailの設定ファイルが壊れた?とかメールサーバ側の問題じゃなかろうか、とすら思えてきます。わかりません。
—
※メール送信 – 接続方法を「smtp」に変えたら、ページ下部のsmtpアカウント関連の値も設定します。設定しなくてもエラーは出ませんが、メールが送信されません(当たり前か)。
サーバ環境)
- レンタルサーバ: エックスサーバー X10(サーバ番号: sv67)
- MySQL: 4.0.27-Max(EUC-JP)
- ZenCart: 1.3.0.2-l10n-jp-4(EUC-JP)
- PHP: 4.3.9
- Apache: 2.0.52
- OS: Linux
- CPU: Core2 Duo E6600 ( 2.40GHz )
- Memory: 4GB
Warning: array_search() [function.array-search]: Wrong datatype for second argument in /virtual/fe01/public_html/default.memoblog.net/wp-content/themes/aeros/single.php on line 83
Warning: array_search() [function.array-search]: Wrong datatype for second argument in /virtual/fe01/public_html/default.memoblog.net/wp-content/themes/aeros/single.php on line 83
Warning: array_search() [function.array-search]: Wrong datatype for second argument in /virtual/fe01/public_html/default.memoblog.net/wp-content/themes/aeros/single.php on line 83
Warning: array_search() [function.array-search]: Wrong datatype for second argument in /virtual/fe01/public_html/default.memoblog.net/wp-content/themes/aeros/single.php on line 83
コメントはまだありません »
RSS feed for comments on this post. TrackBack URL