Zen-Cart日本語公式サイトがリリースしている携帯版モジュール0.9-1をインストールした際に、真っ白になったことがあったので、メモ。

今回のサーバーは、display_errorsがオフになっていたので、エラーも表示されずに真っ白になってしまっています。
まずは、
includes\application_top.phpの
[code]
if (defined(‘STRICT_ERROR_REPORTING’) && STRICT_ERROR_REPORTING == true) {
[/code]
の前に
[code]
ini_set(‘display_errors’,1);
define(‘STRICT_ERROR_REPORTING’,true);
[/code]
を追加して、エラー内容を確認しました。

[code]
Warning: main(): open_basedir restriction in effect. File(/usr/share/pear/PEAR.php) is not within the allowed path(s): (/var/www/****/httpdocs:/tmp) in /var/www/****/httpdocs/includes/classes/pear/Net/UserAgent/Mobile.php on line 22

Warning: main(PEAR.php): failed to open stream: Operation not permitted in /var/www/****/httpdocs/includes/classes/pear/Net/UserAgent/Mobile.php on line 22

Fatal error: main(): Failed opening required ‘PEAR.php’ (include_path=’/var/www/****/httpdocs/includes/classes/pear:.:/usr/share/pear’) in /var/www/****/httpdocs/includes/classes/pear/Net/UserAgent/Mobile.php on line 22
[/code]
というものでした。

phpinfo()でopen_basedirを確認してみると、
open_basedir /var/www/****/httpdocs:/tmp
include_path .:/usr/share/pear
でした。
/usr/share/pear が open_basedir にないのが原因ですネ。

open_basedir “/var/www/****/httpdocs:/tmp:/usr/share/pear”
としてwebサーバーを再起動したらOKでした。

同様の症状で困っている方の参考になれば幸いです。


追記)
PCでチェックアウトするとcheckout_processでParse errorが発生
includes/templates/template_default/templates/tpl_modules_checkout_process_email.php
の4行目
[code]print “この度” STORE_NAME . “\n”[/code]

[code]print “この度” . STORE_NAME . “\n”[/code]
にすればOK。ドット抜けのバグでした。