【開発】ECCUBEで文字化けするやんVer2.11.4

サーバ構築collation,eccube,utf8,文字化け

sc20111231213930

いま現在の最新版を試しにインストールしてみた。
(年末になにやってんねん俺(;^ω^))

試しなのでXAMPP(Windows)にインストール。

静的なページ部分は日本語で表示されているのですが、DBから抽出している部分(商品名やカテゴリ名など)が、完全に文字化けしてる。

ググッてみると多くの方がぶちあったってる問題のよう。日本発のプロジェクトで、こんな問題に当たるとは意外。

自分のところでは、データベースの設定のみで回避しました(実際に運用してないし、だったらいいなレベルですが)

sc20111231214431

phpadminなら、データベース(eccube_db)を選択後、ここの操作タブをクリック。


sc20111231214549ここの照合順序で、utf8_general_ciを選択します。

 

追記:

あ(;^ω^)年越してたのね・・・。

CentOSの方にもインストールしてみたら、同じ問題が出ましたので、そちらの方も備忘録として書かせていただきます。

CentOSの方にはMySQLAdminは入れてないので、コマンドで行う必要があります。

create database データベース;

grant all on データベース.* to 'username’@’localhost’ identified by 'password’;

いつものコマンドで、DataBaseを作成後、開いてみたら文字化け・・、照合順序を変更しなければなりません。mysql/Configファイルにて、設定する事も可能ですが、他のDBには影響を与えたくありませんので、新しく作成したDBのみ設定を行います。

SELECT SCHEMA_NAME, DEFAULT_CHARACTER_SET_NAME, DEFAULT_COLLATION_NAME 
FROM INFORMATION_SCHEMA.SCHEMATA WHERE SCHEMA_NAME = 'データベース’;

このコマンドで、現在のCOLLATION/照合順序や文字コードを確認できます。utf8_general_ciでなかったので、変更します。

ALTER DATABASE `データベース` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci

これで、照合順序の変更が済み、ECCUBEで日本語が表示されました。

うむ?なんでか、課税規則の項目だけが文字化けしてます。ググったところ、EC-CUBEコミュニティでも同じ問題を見つけました。

data/cashe/mtb_taxrule.phpを削除すれば治ると書かれてましたが、自分のバージョンでは、mtb_taxrule.serialのようでした。インストールしたばかりだったら、cashe部分は全削除した方がいいかもしれない(問題が起こったら)

追記:課税対象だけでなく他項目も文字化けしてました。cashe内は全削除した方がいいですね。問題は発生してないようなので、多分OK

sc20120101031416これらの問題の他、ECCUBEインストール時の問題として、PHPのタイムゾーンが指摘されました。

/etc/php.iniのこの部分。通常は、コメントかと思いますが、これを日本時間にしました。


sc20120101030614

なんとか、CentOSで動きました。

eccubeは解凍すると、ディレクトリが3つほど出来ますので、実際に設置する際、自分は以下のようにしてみました。

適当なディレクトリ(~homeやoptとか)を、ECCUBEのルートという事にしてコピーします。

ファイル権限やモードの変更も済ませます。

 

eccube -> ~eccube/eccube-2.11.4/

後のバージョンアップの事を考えてリンクを作っておきます。

<VirtualHost *:80>
    DocumentRoot ~eccube/html/
    ServerName zakka.ahh.jp
    ErrorDocument 404 http://zakka.ahh.jp
</VirtualHost>

<Directory "~eccube/html/install">
    Order deny,allow
    Deny from all
</Directory>

これはhttpd.confの中身です。/html以下を公開します。/html/install以下は、万が一を考えて外に見えないようにします(削除すりゃいいけんども)

namedの設定をして、名前解決を確認。これで公開されました。

後の設定カスタムが便利になるように、Sambaからも参照できるように設定しておきます。

・・・さて、何をすんべか(;^ω^)

商品データをぶっ込む方法は、DB直接か、管理画面からCSVかの2通り。後のECCUBEバージョンアップの事を考えると、DBダイレクトは危険。CSVならエラー処理もしてくれるだろうし。CSVとはいえ、70項目超えてるし、大変ですね。でも、その前にマスター整備か。

サーバ構築collation,eccube,utf8,文字化け

Posted by nabe