よたか2009.01.06 07:13:40
以前プログラムを納品した先から「EC-CUBEのインストールできますか?」と聞かれたので、気軽に受けてしまいましたのですが、手こずりました。解凍したファイルをFTPで上げると1053ものファイルとディリクトリのパーミッションを変更して行かないと行けないので、tar.gzのファイルをアップして、sshでアクセスしてtarを使って解凍しました。
tar -xzf eccube-2.3.3.tar.gz
こんな感じで解凍されます。
public_html
└eccube-2.3.3
├ data (プログラム)
├ html (公開されるファイル)
└ COPYING
しかし、このままだと、ショップのURLが
http://hoge.s000.xrea.com/eccube-2.3.3/html/
なんてひどい事になるのでディリクトリを動かします。
dataフォルダは、public_htmlより上に置きたいのだけど、そんな事すると書き出されるファイルが「消去不可」になるXREAの罠にハマるので、仕方なくpublic_html上に配置します。
public_html
├eccube-2.3.3
│ └ COPYING
├ data (プログラム)
└ shop.hoge.com(htmlからリネーム)
リネームしたら、html/define.php の6行目を書き換えないと…。
define("DATA_DIR2HTML", "/../html/");
→define("DATA_DIR2HTML", "/../shop.hoge.com/");
さてそこで、shop.hoge.com へ接続してスムーズにインストールできると思いきや、「アクセス権の変更」しなければならないらしい。
パーミッション変更が面倒だから、tarで解凍したのに…。きっと何かのオプションが間違えているのでしょう。
でも解らないので、とにかく全部変更する事にします。変更するファイルとディリクトリあわせて1053!うげーっ!めんどくせー!
きっと何度かやる事になりそうなので、パーミッションを変更するファイルのリストを集めて、一応コマンド書きました。これ書くのに軽く1時間。
この記事の最後に付けておきますので、必要な方はコピーして使ってみてください。責任は持てませんけど…。
もう一度、shop.hoge.com へアクセス。「インストール画面」が表示されたところで、[次へ]をクリック。さっき引っかかったアクセス権のチェックはOK。でも、テーブル作成の時にエラーが出た。
×:追加テーブル(dtb_mobile_kara_mail)の作成に失敗しました。
×:追加テーブル(dtb_mobile_ext_session_id)の作成に失敗しました。
おかしいと思って、ネットで調べる事30分。MySQLのバージョンが低かったようです。「結局そこか!」
仕方なく、MySQLのデータベースを削除し、データベースをpostgreSQLに変更してインストールを続けてもインストールできない…。よく見ると、MySQLに接続しようとしてます。きっとどこかに記録が残っているのね…。
結局全部削除してインストールやり直し。でも今度はパーミッションは一気に書き換えできるので、ちょっと気分がいい。
再びインストール、データベースのテーブルもちゃんと出来てる。ここから順調!と思いきや、またエラーがでた。しかも今度は、アラートではなく、PHPのworningが3行ほど。
なんて書いてあったか忘れたけど、ファイルが作れないとか、無いとか言ってるので、確認すると、ディリクトリとファイルのユーザーがapacheになってるので書き込めない様です。
これかぁ〜。ネットで見て回ると必ず書いてあるよね。仕方ないので、xreaの管理画面のツールから[ファイル所有者の変更]を使って待つ事3分。今度はそこはクリアした物の違う箇所で似た様なエラー。
結局[ファイル所有者の変更]を3回ほど繰り返してインストール完了…と、おもいきや、またエラー。今度はアラート。
/data/logs/site.log が見つかりません。ときた。
もういい加減疲れて来たので何も考えずに、空ファイルを上げると、パーミッションが違うと怒られたので、666に変更。
[次へ]ボタンをクリックしてやっと、インストール完了。install/index.php を削除して管理画面に入ると、綺麗な画面になにやらホッとため息が出ました。
気が付くともう5時30分。
最後に気になっていたdataフォルダを隠す為に、pubulic_html/.htaccess に、リダイレクトを追加。
Redirect permanent /data/ http://shop.hoge.com/
Redirect permanent /data http://shop.hoge.com/
pubulic_html/data/index.html を追加してリダイレクトさせる。
<html><head>
<META HTTP-EQUIV="refresh" content="0;URL=http://shop.hoge.com/">
</head></html>
一応ココまでやった。正直ちょっと大変だったけど、かなり勉強になりました。
でもね、夕方事務所でcoreserverにもインストールしたんですよ。
NコミュのSさんから「EC-CUBEはMySQLだと泣きをみるので、postgreSQL使った方がいい」とtwitter経由でメッセージも貰いましたので、今回は最初からpostgreSQL 使って。
そしたら、一回も引っかからずにインストール完了!それこそ、物の15分ほど。
なにがどう違うのかは作った人が調べるんだろうから私には解りません。postgreSQLとPHP5だと幸せなのでしょうか?
3月11日にはマールの増田さんと、IKUKOさんとでFLOSSで勉強会やる事になったので、それまでにもう少し理解しておきたいし、まずは、はなまるセレクションのリニューアルからかかる予定です。
パーミッション変更する時使ったコマンドです。
質問は受けますが、使う時は自己責任でお願いします。
chmod 707 data/cache/
chmod 707 html/install/temp
chmod 606 html/cp/dummy
chmod 606 html/user_data/css/common.css
chmod 606 html/user_data/include/campaign/dummy
chmod 606 html/user_data/packages/default/css/*.css
chmod 606 html/user_data/packages/default/img/*.gif
chmod 606 html/user_data/packages/default/img/*/*.jpg
chmod 606 html/user_data/packages/default/img/*/*.gif
chmod 606 html/user_data/packages/default/img/*/*/*.jpg
chmod 606 html/user_data/packages/default/img/*/*/*.gif
chmod 606 html/user_data/packages/default/img/pdf/logo.png
chmod 606 html/user_data/packages/default/js/*.js
chmod 606 html/user_data/packages/default/js/ownersstore.js.php
chmod 606 html/user_data/packages/default/sql/update_bloc.sql
chmod 606 data/cache/dummy
chmod 606 data/logs/dummy
chmod 707 html/upload/*
chmod 606 html/upload/dummy
chmod 707 html/user_data/*
chmod 606 html/user_data/dummy
chmod 707 html/user_data/include/*
chmod 707 html/user_data/packages/*
chmod 707 html/user_data/packages/default/*
chmod 707 html/user_data/packages/default/img/*
chmod 707 html/user_data/packages/default/img/admin/*
chmod 707 html/user_data/templates/preview
chmod 707 data/class/*
chmod 707 data/class/db/dbfactory
chmod 707 data/class/pages/*
chmod 707 data/class/pages/admin/*
chmod 707 data/class/pages/frontparts/bloc
chmod 707 data/class/pages/upgrade/helper
chmod 707 data/class/session/sessionfactory
chmod 606 data/*php
chmod 606 data/class/*php
chmod 606 data/class/*/*php
chmod 606 data/class/*/*/*php
chmod 606 data/class/*/*/*/*php
chmod 707 data/downloads/*
chmod 606 data/downloads/dummy
chmod 606 data/downloads/KEN_ALL.CSV
chmod 707 data/Smarty/*
chmod 707 data/Smarty/templates/default
chmod 707 data/Smarty/templates/default/*
chmod 707 data/Smarty/templates/default/admin/*
chmod 707 data/Smarty/templates/default/campaign/*
chmod 707 data/Smarty/templates/default/mobile/*
chmod 707 data/Smarty/templates/default/mobile/frontparts/bloc
chmod 606 data/Smarty/config/dummy
chmod 606 data/Smarty/templates_c/dummy
chmod 606 data/Smarty/*/*/*tpl
chmod 606 data/Smarty/*/*/*/*tpl
chmod 606 data/Smarty/*/*/*/*/*tpl
chmod 606 data/Smarty/*/*/*/*/*/*tpl