Linux

XREAにEC-CUBEを入れる方法

オリジナルなECサイト構築ができる「EC-CUBE」がロックオンより9月1日付けで発表されてました。
元ネタはここ(CNET)
開発者?のコミュニティもあるようですがあまり盛り上がってないような雰囲気なのですが(w
さて、当然サーバなんていちいち構築していられないので、外部のサーバに入れてみようと思います。
EC-CUBEのシステム用件を見てみると

OS
FreeBSD 5.4以降
言語
PHP 4.4.x以降
※PHP5.0.x以降にも対応しています。
ライブラリ
freetype2 2.1.10以降
gd 2.0.33以降
データベース
PostgreSQL 7.4.x以降

ん?別にPHP動いてPostgreSQLなら動くんじゃね?という考えでXREAにインストールすることにしました。
FreeBSDってのもなんかマニアックな仕様ですね(w
あと、事前作業としXREAにPostgreSQLをインストールしておいてください。

とりあえずVersion 0.9.2(2006/09/19)をダウンロードします。

解凍すると以下のフォルダができます。
[data]
[html]

通常はこののままアップロードしてVirualHostでDocumentRootを[html]にするようですが
XREAではそんなことはできないので幸いXREAでは通常[public_html]にファイルをアップロードしますのでこいつを利用します。
[data]も[public_html]に統合しちゃいます。いろいろ問題あるので・・・

[public_html]を利用するため、ソースを変更する必要があります。
置換ソフトなんかつかって置換します。
Repl-Ace使いました。
["html/]⇒["public_html/]
['html/]⇒['public_html/]
[/html/]⇒[/public_html/]
[`html/]⇒[`public_html/]
["data/]⇒["public_html/]
['data/]⇒['public_html/]
[/data/]⇒[/public_html/]
置換後FTPでアップロードします。
[data]以下と[html]以下のファイルを[/public_html]にアップロードします。

さてインストールを開始します。
取得したアドレスへアクセスするinstallへリダイレクトされます。

アドレスバー

そうしたら以下のように表示されるはずです。

注意

指示に従い[temp]に権限777を付与します。

うまくいくとインストール画面が表示されます。ここまでこれれば50%インストールは終了です。

インストール

次へ進むと以下のメッセージが表示されます。指示に従って書き込み権限を変更します。
>> ×:public_html/install.inc(644) にユーザ書込み権限(666)を付与して下さい。
>> ×:public_html/user_data(755) にユーザ書込み権限(777)を付与して下さい。
>> ×:public_html/upload(755) にユーザ書込み権限(777)を付与して下さい。
>> ×:public_html/Smarty/templates_c(755) にユーザ書込み権限(777)を付与して下さい。
>> ×:public_html/update(755) にユーザ書込み権限(777)を付与して下さい。
>> ×:public_html/logs(755) にユーザ書込み権限(777)を付与して下さい。

前に戻って、再度前に進むと
>> ○:public_html/install.inc(666) は問題ありません。
>> ○:public_html/user_data(777) は問題ありません。
>> ○:public_html/upload(777) は問題ありません。
>> ○:public_html/Smarty/templates_c(777) は問題ありません。
>> ○:public_html/update(777) は問題ありません。
>> ○:public_html/logs(777) は問題ありません。
のように表示されれば成功です。

次へ進むと
■必要なファイルのコピー
・・・・・・・全部失敗するはずです。
これはXREAではPHPで作成されたときのユーザなどの問題で書き込みができないためです。
これを解決するため、XREAの管理メニューのツールを利用します。
「ファイル所有者の修正」です。
こいつを利用したPHPで作成されたディレクトリの権限を変更してやります。3~5分まってみます。
再度前にも戻って進むと、一部成功の文字が読めると思います。

再度、「ファイル所有者の修正」を利用します。
今度は成功に混じってファイルが存在しますってのもあると出てきます。
まだ失敗の文字が見えると思います。

3度目の正直もう一度「ファイル所有者の修正」を利用します。
再度戻って、次へ進みます。
失敗の文字が見えなければ次へ進みます。

次に「店名」と「管理者メールアドレス」を入力します。

インストール画面

次にPostgreSQLの設定をします。

DB接続

ここでは「DBサーバ」の欄には「''」を入力します。
XREAのPostgreSQLではlocalhostやIPアドレスは指定できないようです。
DB名、DBユーザ、DBパスワードは指定されたものを入力します。
IPアドレスなんか入れてると以下のようなエラーメッセージを吐きます。
>> DB Error: connect failed
[nativecode=Unable to connect to PostgreSQL server: could not connect to server: Connection refused Is the server running on host "127.0.0.1" and accepting TCP/IP connections on port 5432?]
入力後次へ進みます。
              
■データベースの初期化
データベースの初期化を開始します
※すでにテーブル等が作成されている場合は中断されます

と出ればOKです
次へ進みます。

○:テーブルの作成に成功しました。
○:ビューの作成に成功しました。
○:初期データの作成に成功しました。
○:カラムコメントの書込みに成功しました。
○:テーブルコメントの書込みに成功しました。

これでインストールは終了です。
次へ進みます。

むむ!!!真っ白!?
いや、インストールは成功していますのでご安心を(w
ブラウザはそのままにしといてください。
真っ白になるのはDBにアクセスできていないのが原因です。

これを直すため[/public_html/install.inc]を修正する必要があります。

< ?php     define ('ECCUBE_INSTALL', 'ON');     define ('ROOT_DIR', '/virtual/XXXX/');     define ('SITE_URL', 'http://XXXX.sXXX.xrea.com/');     define ('SSL_URL', 'http://XXXX.sXXX.xrea.com/');     define ('DOMAIN_NAME', '.sXXX.xrea.com');     define ('DB_USER', 'XXXX');     define ('DB_PASSWORD', 'XXXXXXXX);     define ('DB_SERVER', ''''); ←ここ     define ('DB_NAME', 'XXXX'); ?>

define ('DB_SERVER', '');
のように中の「''」を削る必要があります。
修正してあげます。

更新ボタンを押して再度読み込むと

インストール完了

と出るはずです。
これで本当にインストール終了です。

>> /install/index.phpは、インストール完了後にファイルを削除してください。
とでると思います
とりあえず消してくださいw

ログイン画面が出てくると思います。

ログイン画面

ID:admin
Pass:password

でログインします。

管理画面

これでインストール自体は終了です。

デフォルトでこんな感じに表示されます。

トップページ画面

今回は、インストールにおいては何度か失敗しています。
XreaではPHPで作成されたファイルはapacheになってしまいます。
そのため、権限などの変更や削除などが行えない問題が発生します。
また、[public_html]より下にPHPがファイルを作成してしまうと削除など行えなくなってしまう
問題が発生します。
そのため今回は[html]と[data]のフォルダを統合して[public_html]にしています。
セキュリティの面では落ちてると思います。気をつけてください。

ほかに文字列置換するときには文字コードも気をつけてください。オリジナルなECサイト構築ができる「EC-CUBE」がロックオンより9月1日付けで発表されてました。
元ネタはここ(CNET)
開発者?のコミュニティもあるようですがあまり盛り上がってないような雰囲気なのですが(w
さて、当然サーバなんていちいち構築していられないので、外部のサーバに入れてみようと思います。
EC-CUBEのシステム用件を見てみると

OS
FreeBSD 5.4以降
言語
PHP 4.4.x以降
※PHP5.0.x以降にも対応しています。
ライブラリ
freetype2 2.1.10以降
gd 2.0.33以降
データベース
PostgreSQL 7.4.x以降

ん?別にPHP動いてPostgreSQLなら動くんじゃね?という考えでXREAにインストールすることにしました。
FreeBSDってのもなんかマニアックな仕様ですね(w
あと、事前作業としXREAにPostgreSQLをインストールしておいてください。

とりあえずVersion 0.9.2(2006/09/19)をダウンロードします。

解凍すると以下のフォルダができます。
[data]
[html]

通常はこののままアップロードしてVirualHostでDocumentRootを[html]にするようですが
XREAではそんなことはできないので幸いXREAでは通常[public_html]にファイルをアップロードしますのでこいつを利用します。
[data]も[public_html]に統合しちゃいます。いろいろ問題あるので・・・

[public_html]を利用するため、ソースを変更する必要があります。
置換ソフトなんかつかって置換します。
Repl-Ace使いました。
["html/]⇒["public_html/]
['html/]⇒['public_html/]
[/html/]⇒[/public_html/]
[`html/]⇒[`public_html/]
["data/]⇒["public_html/]
['data/]⇒['public_html/]
[/data/]⇒[/public_html/]
置換後FTPでアップロードします。
[data]以下と[html]以下のファイルを[/public_html]にアップロードします。

さてインストールを開始します。
取得したアドレスへアクセスするinstallへリダイレクトされます。

アドレスバー

そうしたら以下のように表示されるはずです。

注意

指示に従い[temp]に権限777を付与します。

うまくいくとインストール画面が表示されます。ここまでこれれば50%インストールは終了です。

インストール

次へ進むと以下のメッセージが表示されます。指示に従って書き込み権限を変更します。
>> ×:public_html/install.inc(644) にユーザ書込み権限(666)を付与して下さい。
>> ×:public_html/user_data(755) にユーザ書込み権限(777)を付与して下さい。
>> ×:public_html/upload(755) にユーザ書込み権限(777)を付与して下さい。
>> ×:public_html/Smarty/templates_c(755) にユーザ書込み権限(777)を付与して下さい。
>> ×:public_html/update(755) にユーザ書込み権限(777)を付与して下さい。
>> ×:public_html/logs(755) にユーザ書込み権限(777)を付与して下さい。

前に戻って、再度前に進むと
>> ○:public_html/install.inc(666) は問題ありません。
>> ○:public_html/user_data(777) は問題ありません。
>> ○:public_html/upload(777) は問題ありません。
>> ○:public_html/Smarty/templates_c(777) は問題ありません。
>> ○:public_html/update(777) は問題ありません。
>> ○:public_html/logs(777) は問題ありません。
のように表示されれば成功です。

次へ進むと
■必要なファイルのコピー
・・・・・・・全部失敗するはずです。
これはXREAではPHPで作成されたときのユーザなどの問題で書き込みができないためです。
これを解決するため、XREAの管理メニューのツールを利用します。
「ファイル所有者の修正」です。
こいつを利用したPHPで作成されたディレクトリの権限を変更してやります。3~5分まってみます。
再度前にも戻って進むと、一部成功の文字が読めると思います。

再度、「ファイル所有者の修正」を利用します。
今度は成功に混じってファイルが存在しますってのもあると出てきます。
まだ失敗の文字が見えると思います。

3度目の正直もう一度「ファイル所有者の修正」を利用します。
再度戻って、次へ進みます。
失敗の文字が見えなければ次へ進みます。

次に「店名」と「管理者メールアドレス」を入力します。

インストール画面

次にPostgreSQLの設定をします。

DB接続

ここでは「DBサーバ」の欄には「''」を入力します。
XREAのPostgreSQLではlocalhostやIPアドレスは指定できないようです。
DB名、DBユーザ、DBパスワードは指定されたものを入力します。
IPアドレスなんか入れてると以下のようなエラーメッセージを吐きます。
>> DB Error: connect failed
[nativecode=Unable to connect to PostgreSQL server: could not connect to server: Connection refused Is the server running on host "127.0.0.1" and accepting TCP/IP connections on port 5432?]
入力後次へ進みます。
              
■データベースの初期化
データベースの初期化を開始します
※すでにテーブル等が作成されている場合は中断されます

と出ればOKです
次へ進みます。

○:テーブルの作成に成功しました。
○:ビューの作成に成功しました。
○:初期データの作成に成功しました。
○:カラムコメントの書込みに成功しました。
○:テーブルコメントの書込みに成功しました。

これでインストールは終了です。
次へ進みます。

むむ!!!真っ白!?
いや、インストールは成功していますのでご安心を(w
ブラウザはそのままにしといてください。
真っ白になるのはDBにアクセスできていないのが原因です。

これを直すため[/public_html/install.inc]を修正する必要があります。

< ?php     define ('ECCUBE_INSTALL', 'ON');     define ('ROOT_DIR', '/virtual/XXXX/');     define ('SITE_URL', 'http://XXXX.sXXX.xrea.com/');     define ('SSL_URL', 'http://XXXX.sXXX.xrea.com/');     define ('DOMAIN_NAME', '.sXXX.xrea.com');     define ('DB_USER', 'XXXX');     define ('DB_PASSWORD', 'XXXXXXXX);     define ('DB_SERVER', ''''); ←ここ     define ('DB_NAME', 'XXXX'); ?>

define ('DB_SERVER', '');
のように中の「''」を削る必要があります。
修正してあげます。

更新ボタンを押して再度読み込むと

インストール完了

と出るはずです。
これで本当にインストール終了です。

>> /install/index.phpは、インストール完了後にファイルを削除してください。
とでると思います
とりあえず消してくださいw

ログイン画面が出てくると思います。

ログイン画面

ID:admin
Pass:password

でログインします。

管理画面

これでインストール自体は終了です。

デフォルトでこんな感じに表示されます。

トップページ画面

今回は、インストールにおいては何度か失敗しています。
XreaではPHPで作成されたファイルはapacheになってしまいます。
そのため、権限などの変更や削除などが行えない問題が発生します。
また、[public_html]より下にPHPがファイルを作成してしまうと削除など行えなくなってしまう
問題が発生します。
そのため今回は[html]と[data]のフォルダを統合して[public_html]にしています。
セキュリティの面では落ちてると思います。気をつけてください。

ほかに文字列置換するときには文字コードも気をつけてください。

-Linux
-