レンタルサーバでEC-CUBE3でのURL設定の仕方について
少し間が空いてしまいましたが、 以前にEC-CUBE3のURL設定について記事を書きました。
amidaike.hatenablog.com amidaike.hatenablog.com
通常のURLの設定方法については、 これらの記事に記載されている通りDocumetRootを
/Applications/MAMP/htdocs/eccube/html
として設定してhttp://ドメイン名/
で接続する方法であったり、
htmlというディレクトリ名を
/Applications/MAMP/htdocs/eccube/store
に変更する事でhttp://ドメイン名/store
というURLで接続可能となります。
ところが開発コミュニティーを見ると、
http://xoops.ec-cube.net/modules/newbb/viewtopic.php?topic_id=16212&forum=10&post_id=71962#forumpost71962xoops.ec-cube.net
http://(ドメイン名)/html/index.php
ではじまるものを
http://(ドメイン名)/index.php
というようにレンタルサーバで自由にDocumentRootを設定できないが、
http://(ドメイン名)/
として設定したい時があります。
これらはどのように設定するかというと、 公式にはサポートされていない方法ではありますが以下のように対応する事で実現可能となります。
EC-CUBEをインストールしたディレクトリ先は
/home/hoge/EC-CUBEROOT
とします。
インストール
http://ドメイン名/html/install.php
から普通にインストールを行ってください。ファイルの配置場所変更
/home/hoge/EC-CUBEROOT/html
にある以下の3つのファイル
index.php
.htaccess
robot.txt
を/home/hoge/EC-CUBEROOT
直下へ移動させるかコピーしてください。index.phpの書き換え
require __DIR__ . '/../autoload.php';
と記述されている箇所をrequire __DIR__ . '/autoload.php';
に変更します。path.ymlの書き換え
/home/hoge/EC-CUBEROOT/app/config/eccube/path.yml
にある
root_urlpath: /html
を
root_urlpath:
に変更してください。
上記の設定を行う事で、
http://ドメイン名/
で接続できるようになります。
本来であればインストール時にそういうオプションがあれば良いんですが、 当分用意されなさそうですなので、スクリプトを作成して公開するようにします。
EC-CUBE3を開発する時に参考になる本
前回まではEC-CUBE3のインストールおよびURL構成について説明しました。
今回からはEC-CUBE3を開発する方法を書いていきます。
EC-CUBE3の基本要件としては、
EC CUBE3.0.0の要件 · EC-CUBE/ec-cube Wiki · GitHub
というようになっており、Symfony2コンポーネントであるSilexを使って開発されています。
このSilexを使って開発するためには、Symfony2の知識が必須となってきます。
を一通り読めば理解は出来るのですが、基礎知識を作る上では以下の本が参考になります。
効率的なWebアプリケーションの作り方 ~PHPによるモダン開発入門
- 作者: 小川雄大
- 出版社/メーカー: 技術評論社
- 発売日: 2012/05/26
- メディア: 大型本
- 購入: 6人 クリック: 146回
- この商品を含むブログ (8件) を見る
日本語で読めるSymfony2の本はこれ以外には残念ながら見当たりません。
但し、Symfony2.1を対象にしているため現行のバージョンと大分乖離がありますが、
基礎となる部分は理解出来ると思いますのでまずはここからSymfony2の知識を仕入れるのが近道になると思いますのでぜひ一度参考にしてください。
Symfony2.7に対応した本を誰か出してくれないんですかね。。。
EC-CUBE3のURL設定について2
前回はEC-CUBE3のURLの設定方法について書きました。
今回は
みたいに書く方法です。
これは非常に簡単で、
/Applications/MAMP/htdocs/eccube/html
とhtmlと記載している箇所をstore
というようにディレクトリ名をhtmlからstoreへ変更し、
httpd.conf
を以下のように変更してください。
Listen 8001
<virtualhost *:8001>
DocumentRoot "/Applications/MAMP/htdocs/eccube"
<IfModule dir_module>
DirectoryIndex index.html index.php
</IfModule>
</virtualhost>
こうすることで、
とサブディレクトリとして扱えるようになります。
非常に簡単に設定できますね。 サイトトップは企業サイトとして作成し、ECサイトはサブディレクトリとして扱いたいという方はこちらの方法となります。
EC-CUBE3のURL設定について
前回まではEC-CUBE3のインストール方法について書きました。
今回は、EC-CUBEで使用するURLについて書きます。
MAMPをデフォルトで使っているとEC-CUBEのURLは、
http://localhost:8888/eccube/html/
となり非常にカッコ悪いですね。
EC-CUBEを利用される方は、
http://[ドメイン名]/
として使う方が多いとおもいます。
今回はMAMPでその設定について記述しますが対象はApacheとなりますので、nginxの方はまたどこかで説明できればと思います。
MAMPをデフォルトで使用されている方は、
/Applications/MAMP/htdocs
がDocumentRootになっています。
これは前回から特に変更せずにそのままにしておきます。
/Applications/MAMP/htdocs/eccube
次に必要なのは、Apacheの設定変更になります。
以下のディレクトリにあるhttpd.confを変更する事で,
/Applications/MAMP/conf/apache/httpd.conf
だけで接続できるようにしましょう。
httpd.conf
に対して、最終行に以下の内容を追加してください。
Listen 8001
<virtualhost *:8001>
DocumentRoot "/Applications/MAMP/htdocs/eccube/html"
<IfModule dir_module>
DirectoryIndex index.html index.php
</IfModule>
</virtualhost>
これを追加後、MAMPを再起動すると、
だけで接続できるようになります。
設定変更後、
/Applications/MAMP/htdocs/eccube/app/cache
配下にあるディレクトリを全て削除してください。
その後、以前に設定されていた方は再度インストールが必要となりますので、
http://localhost:8001/install.php/
を再実行してください。
今までであれば、eccube/html
が必要だったのに非常にすっきりしましたね。
http://localhost:8001/ や http://localhost:8001/admin で接続できるか確認してください。
接続できないという方がいれば、再度MAMPを再起動してみてください。
既にインストールされている方は手動で変更する方法もありますが、それは機会があった時に書きます。
別にeccube/html
があっても構いませんが人それぞれの好みになりますのでそこはご自由にしてください。
要望がありましたら、
http://localhost:8001/store や http://localhost:8001/shop などのサブディレクトリとしてEC-CUBE3を利用できる方法も書きますので、設定したいという方はコメントください。
EC-CUBE3のインストール画面の設定
前回ではEC-CUBE3の環境構築とインストールについて簡単に説明しました。
今回はもう少し詳しくインストール画面について説明します。
EC-CUBE3とデータベースの準備は既に完了しているものとして、
下記のURLへアクセスします。
http://localhost:8888/eccube/html/install.php/step1
インストール画面が表示されますので、「次へ進む」ボタンを押します。
「送信を承諾する」はチェックしてもしなくてもどちらでも構いません。
権限チェックがされますので、問題がなければ「次へ進む」を押します。
サイトの設定画面が表示されます。こちらはサイト名や管理者用メールアドレス等の情報を入力します。 それぞれの項目の説明は以下の通りです。
- あなたの店名 : サイト名
- メールアドレス : 管理者用のメールアドレス
- 管理画面ログインID : 管理画面にログインするID
- 管理画面パスワード : 管理画面にログインするパスワード
- 管理画面のディレクトリ名 : 管理画面のURL
- サイトへのアクセスSSL : httpsで接続させるかどうかのチェック
下記は実際に入力した内容となります。
(メールアドレスはここでは表示されていませんが、実際には入力してください)
入力が完了すると次はデータベースの設定となります。
今回はmysqlを利用するのでmysqlを選択し、以下のように入力します。
設定が完了すればデータベースの初期化を行います。
完了しました画面が表示されれば、インストールは無事に完了です。
「管理画面を表示」ボタンを押すと管理画面が表示されます。
こちらの画面では、先ほど設定したログインID、パスワードを入力し「ログイン」ボタンを押します。
無事にログインできれば管理画面のトップページが表示されます。
また、
http://localhost:8888/eccube/html/
へアクセスするとトップページが表示されます。
2系とは違って管理画面、フロント画面ともにがらっとイメージが変わりましたね。
立方隊長もいなければアイスも無くなっています。
テンプレートを変更しなくてもこの画面であれば、商品を変更するだけでそのまま使えそうな感じがしますね。
EC-CUBE3をMAMPにインストールする方法
2015年7月1日に待望のEC-CUBE3がリリースされました。
というわけで早速MAMPに対してEC-CUBE3をインストールしてみます。
MAMPのダウンロード、インストール
MAMPはダウンロードしてインストールするだけですので詳細説明は割愛します。
MAMPをダウンロード後、インストールすると/ApplicationディレクトリにMAMPディレクトリが作成されます。 MAMP PROというディレクトリも作成されますが今回は普通のMAMPを使います。
php.iniの設定
ダウンロードしたらphp.iniのtimezoneの変更をしてください。
今回はMAMPの初期設定されているphp5.6.7を使います。
/Applications/MAMP/bin/php/php5.6.10/conf/php.ini
のphp.iniにあるtimezoneを
date.timezone = Asia/Tokyo
に変更してください。
EC-CUBE3のダウンロード
さて本来の目的であるEC-CUBE3をインストールしてみましょう。 本日時点でEC-CUBE3.0.0なのでそれを想定して説明します。
早速下記URLよりVersion 3.0.0をダウンロードしてください。zipでもtarでもどちらでも構いません。
EC-CUBEダウンロード / ECサイト構築・リニューアルは「ECオープンプラットフォームEC-CUBE」
データベースの作成
事前にデータベースが必要なのでMAMPを実行し、phpMyAdminへアクセスします。
http://localhost:8888/phpMyAdmin
「データベース」タブを選択し、 以下のデータベースの内容を作成してください。
データベース名:eccube3 照合順序:utf8_general_ci
今回はEC-CUBE3のインストールのみなのでMAMPのデフォルトで設定されているrootユーザのままインストールしますが、本来であれば適切なユーザーとパスワードを設定する必要があります。
EC-CUBE3のインストール
ダウンロードしたEC-CUBE3を先ほどインストールしたMAMPのhtdocsにコピーします。
(解凍したEC-CUBEのディレクトリ名をeccube-3.0.0からeccubeに変更します。)
/Application/htdocs/eccube
http://localhost:8888/eccube/html/install.php/step1
へアクセスしてください。
そうするとEC-CUBE3のインストール画面が表示されますので、 適切な内容を設定してください。
最後まで入力するとEC-CUBE3の設定は完了です。
インストール画面の設定は次回の記事を参考にしてください。
作ってみた。
一応作ってみただけです。
タイミングを見てブログをこちらに移行させようかな。