3月 25

インストールといっても、ダウンロードしたCakePHPをサーバに丸ごとバコッとアップするだけなのですが、CPIは文字コードがEUCなので、UTF-8で利用するにはちょこっと修正する必要があり。
なので、そのポイントだけをサラッと説明。

各ファイルの修正

/app/config/database.php を修正。

encodingを指定するのがポイント。

class DATABASE_CONFIG {
	var $default = array(
		'driver' => 'mysql',
		'persistent' => false,
		'host' => '127.0.0.1',
		'port' => '3307',
		'login' => '<Login ID>',
		'password' => '<Password>',
		'database' => '<Databese Name>',
		'encoding' => 'utf8',
		'prefix' => '',
	);

php.iniを作成

php.iniを作成し、CPIのコントロールパネルから最新のphpのphp.iniをコピペ。
文字化け対策のため以下のように修正。
そして、CakePHPをアップしたディレクトリにアップロード。

mbstring.internal_encoding = UTF-8
mbstring.encoding_translation = Off

/.htaccess を修正。

一番上の階層の .htaccess なので、phpのバージョンと、php.ini へのパスを指定。
“Options +FollowSymLinks” を指定することで mod_rewrite が有効になる。
さらに、php.iniが外部からアクセスできないように拒否させる。

AddHandler x-httpd-php524 .php
suPHP_ConfigPath /usr/home/gt______/html/<php.iniへのPATH>/

<Files ~ "\.ini">
deny from all
</Files>

<IfModule mod_rewrite.c>
	Options +FollowSymLinks
	RewriteEngine on
	RewriteRule    ^$ app/webroot/    [L]
	RewriteRule    (.*) app/webroot/$1 [L]
</IfModule>

/app/.htaccess を修正

<IfModule mod_rewrite.c>
	Options +FollowSymLinks
	RewriteEngine on
	RewriteRule    ^$    webroot/    [L]
	RewriteRule    (.*) webroot/$1    [L]
</IfModule>

/app/webroot/.htaccess を修正

<IfModule mod_rewrite.c>
	Options +FollowSymLinks
	RewriteEngine On
	RewriteCond %{REQUEST_FILENAME} !-d
	RewriteCond %{REQUEST_FILENAME} !-f
	RewriteRule ^(.*)$ index.php?url=$1 [QSA,L]
</IfModule>

多分、これでいけたと思います。
うーん、他に何かしたかなぁ…
とりあえず、あとはCakePHPのブログチュートリアルでもやってみて下さい。

Special Thanks : utf-8とutf8|ASTRODEO

written by sixbird \\ tags: ,

3月 24

EC-CUBE2.4.3をCPI(シェアードプランZ1)にインストールするための手順です。

EC-CUBEは以下の構成とします。

/html/eccube/ : 解凍後のhtmlディレクトリ
/eccube_data/ : 解凍後のdataディレクトリ
DB : postgreSQL

define.php を修正

define(“HTML2DATA_DIR”, “/../../eccube_data/”);
define(“DATA_DIR2HTML”, “../html/eccube/”);

.htaccessを修正(PC用)

以下2行を追加
AddHandler x-httpd-php524 .php
suPHP_ConfigPath /usr/home/ユーザー名/html/eccube/

php_value や php_flag は全て削除。

/html/eccube/ と /eccube_data/ に .htaccess をアップロード。

.htaccessを修正(モバイル用)

以下2行を追加
AddHandler x-httpd-php524 .php
suPHP_ConfigPath /usr/home/ユーザー名/html/eccube/mobile/

php_value や php_flag は全て削除。

/html/eccube/mobile/ に .htaccess をアップロード。

php.iniを編集(PC用)

CPIコントロールパネルの、
お客様情報 > プログラムのパスとサーバの情報
で、最新の「PHP iniの設定情報」にある最新のPHPのリンクをクリックし表示された内容をコピー。
php.iniというファイルを作成し、先程コピーした内容をペースト。

php.iniの内容の一部を以下のように修正。
mbstring.http_input = UTF-8
mbstring.encoding_translation = Off
output_handler = mb_output_handler
output_buffering = 4096
magic_quotes_gpc = Off
upload_max_filesize = 5M

/html/eccube/ にphp.ini をアップロード。

php.iniを編集(モバイル用)

基本的にはPC用と同じ流れ。
ただし、一部を以下のようにしないと色々と問題を起こすので注意。

output_handler = (nullなので何も指定しない)
variables_order = “EGPS”

/html/eccube/mobile/ にphp.ini をアップロード。

.htaccessを新規作成

php.iniが外部から閲覧されないようにphp.iniへのアクセスを拒否。
/html/に作成した .htaccess をアップロード。
※つまり、公開ディレクトリ内に置いたphp.ini全てを拒否。

<Files ~ "\.ini">
deny from all
</Files>

SC_DbConn.php を修正

/eccube_data/class/SC_DbConn.php の
$this->conn = $objDbConn;
の直前に以下を追加。

if (DB_TYPE == 'pgsql') {
pg_set_client_encoding("utf8");
}

insert_data.sqlを修正

html/install/sql/insert_data.sql
内のファイルを以下のように変更。

INSERT INTO mtb_delivery_date VALUES (’2′, ’1〜2日後’,1);
INSERT INTO mtb_delivery_date VALUES (’3′, ’3〜4日後’,2);

INSERT INTO mtb_delivery_date VALUES (’2′, ’1-2日後’,1);
INSERT INTO mtb_delivery_date VALUES (’3′, ’3-4日後’,2);

EUC-JPでは「〜」を扱えないため「-」に変えておく。

パーミッション変更

/html/eccube/install/temp のパーミッションを777に変更。

インストール開始

http://hogehoge.cpinet.jp/eccube/install/ にアクセス。

インストール画面の通りに進めて行けば、問題なく完了するはずです。

Special Thanks : EC-CUBEの女王

written by sixbird \\ tags: , ,