ECCUBE インストール

提供:TuntunkunMediaWiki

移動: 案内, 検索

目次

ECCUBEとは

株式会社ロックオンが開発してきたECサイト構築システムECKitを元に、2006年9月1日にオープンソースとして公開(デュアルライセンスの採用により、GPLの他、商用ライセンスも選択可能)。同社を主導として開発が続けられているオープンソースのEC向けコンテンツマネージメントシステムである。Wikipediaより引用 http://ja.wikipedia.org/wiki/EC-CUBE

ECCUBEインストールの際の注意

ECCUBEは、バージョンによって文字化けなどの問題の解決方法が異なります。今回はECCUBE(ver.2.11.2)のインストールを対称としています。それ以外のバージョンに対しては対象としていません。

ECCUBEインストールに必要なパッケージ

必要なパッケージ
パッケージ名 説明
httpd Webサーバー(Apache)
php php本体
php-mbstring phpのマルチバイト文字列処理用ライブラリ
php-mysql dbmsにアクセスする際に使用するライブラリ
mysql MySQLクライアント
mysql-server MySQLサーバー

ECCUBEインストールに必要なパッケージのインストール

yum -y install httpd php php-mbstring php-mysql php-gd mysql mysql-server

ECCUBEのソースコードのダウンロード

ECCUBEのソースコードは現在以下のページで配布されています。 http://www.ec-cube.net/download/index.php

ECCUBEのインストール

今回は、ECCUBEを/var/wwwにインストールを行います。権限やインストール先ディレクトリは環境に合わせて変更してください。

/var/wwwにソースコードの展開

cd /var/www/
tar -xvf eccube-2.11.2.tar.gz
mv eccube-2.11.2 eccube

eccube.confの作成とALias記述

yumパッケージマネージャを使用してインストールしたApacheの標準ディレクトリは、/var/www/htmlに設定されているので、Alias記述を行うかリンクを貼らなければ/var/www/にアクセスすることができません。そのためAliasを記述します。

cd /etc/httpd/conf.d/
touch eccube.conf
chmod 644 eccube.conf
echo "Alias /eccube /var/www/eccube/html" > eccube.conf

php.iniのデフォルトタイムゾーンの設定(設定されていないとWarningが出る)

vi /etc/php.ini
~省略
date.timezone = Asia/Tokyo
~省略

データベースの作成(MySQL)

//MySQLに接続
mysql -u root
//データベース作成
CREATE DATABASE eccube default character set utf8;
//データベースの権限設定
GRANT ALL ON eccube.* TO 'ユーザー名'@'localhost' IDENTIFIED BY 'パスワード';

文字化け対策

文字化け対策を行う際の注意

文字化け対策で、再インストールが必要な場合、キャッシュデータも消去してから行わなければはまる原因となります。

cd /var/www/eccube/data/cache/
rm -rf *

MySQLの設定

デフォルトの文字コードdefault-character-set=utf8,init-connect=SET NAMES utf8を指定しないと文字化けが発生します。

vi /etc/my.cnf
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
user=mysql
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0

# charset(追加)
default-character-set=utf8
init-connect=SET NAMES utf8

# client setting(追加)
[client]
default-character-set=utf8

[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid

.htaccessの設定

vi /var/www/eccube/html/.htaccess

# 基本は SC_Initial.php で設定するが、ini_setで反映されないものはここで設定する

php_value mbstring.language Japanese
php_flag mbstring.encoding_translation off
php_value output_handler NULL
php_flag magic_quotes_gpc off
php_flag session.auto_start 0

# 文字コードの設定(追加)
php_value default_charset UTF-8
php_value mbstring.language Japanese
php_value mbstring.internal_encoding UTF-8
php_flag mbstring.encoding_translation On
php_value mbstring.http_input auto
php_value mbstring.http_output pass

# INI_ALL なのにもかかわらず, ini_set で指定しても反映されない環境がある...(変更)
php_value mbstring.internal_encoding utf8_general_ci

# デフォルトテンプレートの状態で 2M 近くになるため
php_value upload_max_filesize 5M
#php_value post_max_size 8M
php_flag register_globals off

ラベルの設定(SeLinuuxを使用している場合)

chcon system_u:object_r:httpd_config_t:s0 /etc/httpd/conf.d/eccube.conf
cd /var/www/
chcon system_u:object_r:httpd_sys_content_t:s0 eccube -R
 
cd /var/www/eccube/data/
chcon system_u:object_r:httpd_sys_content_rw_t:s0 cache * -R
 
cd /var/www/eccube/html/install
chcon system_u:object_r:httpd_sys_content_rw_t:s0 temp * -R
 
cd /var/www/eccube/
chcon system_u:object_r:httpd_sys_content_rw_t:s0 html * -R
個人用ツール
名前空間
変種
操作
案内
ツールボックス