さくらインターネットの共用サーバでEC-CUBEのモバイル版を動かす

Pocket
このエントリーをはてなブックマークに追加

現在運用中のEC-CUBEのサイトがある。

さくらインターネットの共用サーバで動作している。

で、今まではPCサイトのみで動作していたのだが、モバイル版もカスタマイズして使えるようにして欲しいと。

専用サーバの場合、ゴリゴリとサーバ自体の設定をいじれるから問題無いのだが、さくらの共用サーバはそうもいかない。

インストールされた状態のままでもうまく動かない。

色々やって、うまく動くようになったので、備忘録。

1) SC_DbConn.phpの修正(data/class/SC_DbConn.php)

DB接続部分でなにやらエラーが出てうまく動かなかったので、コンストラクタのDB接続部分をこんな感じで修正。

// 既に接続されていないか、新規接続要望の場合は接続する。
if(!isset($objDbConn->connection) || $new) {
if($dsn != "") {
$objDbConn = DB::connect($dsn, $options);
$this->dsn = $dsn;
// ここから下3行を追加
$buf = $objDbConn->prepare('SET NAMES utf8');
$objDbConn->execute($buf);
mysql_set_charset("utf8");
} else {
if(defined('DEFAULT_DSN')) {
$objDbConn = DB::connect(DEFAULT_DSN, $options);
$this->dsn = DEFAULT_DSN;
} else {
return;
}
}
}

2) php.iniをばらまく

さくらサーバの場合、html/mobile配下に設置されている.htaccessが効かないので、php.iniにして、その配下のディレクトリ全てにばらまく。

$ cd html/mobile
$ mv .htaccess .htaccess.bk
$ vi php.ini
mbstring.language=Japanese
output_handler=null
mbstring.encoding_translation=Off
magic_quotes_gpc=Off
mbstring.internal_encoding=UTF-8
variables_order=EGPS
session.auto_start=Off
session.use_trans_sid=On
$ cp ./php.ini ./cart/
$ cp ./php.ini ./contact/
$ cp ./php.ini ./entry/
$ cp ./php.ini ./forgot/
$ cp ./php.ini ./frontparts/bloc/
$ cp ./php.ini ./guide/
$ cp ./php.ini ./mypage/
$ cp ./php.ini ./products/
$ cp ./php.ini ./regist/
$ cp ./php.ini ./shopping/
$ cp ./php.ini ./unsupported/
$ cp ./php.ini ./user_data/

とりあえず、こんな感じでうまく動くようになりました。

でわ。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です