EC-CUBE3のインストールとサイトURLから「html」を消す方法
- 公開日:2016/7/15
EC-CUBE3.0.10のインストール方法と、インストールした際にサイトURLに含まれてしまった「html」を消したのでその方法を忘れないようにメモ。
EC-CUBE3のインストール
EC-CUBEをダウンロードする
EC-CUBE公式サイトからファイルをダウンロードします。
現時点での最新バージョンは3.0.10なので、ダウンロードしたファイルはeccube-3.0.10.zip
でした。
ちなみに、ダウンロードするにはEC-CUBEメンバーの登録が必要です。
EC-CUBEのファイルを配置する
ダウンロードしたファイルを解凍します。
今回は、シェルスクリプトインストーラーではなく、Webインストーラーを利用しようと思います。
以下の赤枠ファイルをサーバのドキュメントルートに配置します。
.htaccessは環境に合わせて、そのまま配置するか、既存に追記するか判断してください。
データベースを作る
EC-CUBEはデータベースを必要とするので事前に準備しておきます。
インストール中に必要となるので以下をメモしておきます。
- データベース名
- MySQLユーザー名
- MySQLパスワード
- ホスト名
PostgreSQLの場合は、PostgreSQLユーザ名、PostgreSQLパスワードです。
EC-CUBEをインストールする
STEP1 ようこそ
「http://ドメイン/html/install.php」にアクセスします。
システム要件を満たしているかどうかのチェックが行われ、以下のような画面が表示されます。
もし、必須で満たす必要がる要件があれば、黄色部分の上に赤色で表示されるので、その場合はサーバの設定等を確認する必要があります。
STEP2 権限チェック
次は権限のチェックです。
問題がなければ次に進みます。
STEP3 サイトの設定
ショップ名、受注用メールアドレス、管理者アカウント、管理画面URLなどを登録します。
STEP4 データベースの設定
事前に準備していたデータベースの情報を入力します。データベースの種類を間違えないようにしましょう。
STEP5 データベースの初期化
正常に接続できればデータベースの初期化を行うため次に進みます。
すでに旧バージョンのEC-CUBEをインストールしていて、初期化したくない場合はチェックを入れておきます。
STEP6 インストール完了
インストールが完了しました。
サイトを確認する
インストール完了画面で、「管理画面を表示」ボタンを押すとログイン画面が表示されるので、STEP3で登録したログインIDとパスワードでログインしてみましょう。
インストールの仕上げとして/html/install.php
を削除します。すると、黄色で表示されている警告が消えます。
管理画面上部にあるサイト名をクリックするとショップのフロントエンドを確認することができます。
また、この時点では、サイトURLは「http://ドメイン/html/」となっているのがわかります。
サイトURLから「html」を消す
「http://ドメイン/html/」となっているサイトURLが「http://ドメイン/」となるように変更していきます。
htmlディレクトリから必要ファイルの移動と削除
htmlディレクトリにある以下の緑枠ファイル(index.php、index_dev.php、robots.txt)を1つ上の階層に移動します。
また、htmlディレクトリにある.htaccessは削除します。
ファイルを修正
4つのファイルを修正していきます。
先ほど移動した「index.php」
require __DIR__.'/autoload.php'; ini_set('display_errors', 'Off'); error_reporting(E_ALL & ~E_DEPRECATED & ~E_STRICT);
先ほど移動した「index_dev.php」
if (isset($_SERVER['HTTP_CLIENT_IP']) || isset($_SERVER['HTTP_X_FORWARDED_FOR']) || !in_array(@$_SERVER['REMOTE_ADDR'], $allow) ) { header('HTTP/1.0 403 Forbidden'); exit('You are not allowed to access this file. Check '.basename(__FILE__).' for more information.'); } require_once __DIR__.'/autoload.php'; Debug::enable();
// load config dev $conf = $app['config']; $app['config'] = $app->share(function () use ($conf) { $confarray = array(); $config_dev_file = __DIR__.'/app/config/eccube/config_dev.yml'; if (file_exists($config_dev_file)) { $config_dev = Yaml::parse(file_get_contents($config_dev_file)); if (isset($config_dev)) { $confarray = array_replace_recursive($confarray, $config_dev); } } return array_replace_recursive($conf, $confarray); });
// Silex Web Profiler $app->register(new \Silex\Provider\WebProfilerServiceProvider(), array( 'profiler.cache_dir' => __DIR__.'/app/cache/profiler', 'profiler.mount_prefix' => '/_profiler', ));
app/config/eccube/path.yml
これはWebインストールにより作成されたファイルです。
root_urlpath:
サーバのドキュメントルート直下にある.htaccess
<FilesMatch "^autoload|^cli-config|\.(ht|ini|lock|dist|git|sh)$"> order allow,deny deny from all </FilesMatch> <Files ~ "index.php|index_dev.php"> order deny,allow allow from all </Files> <IfModule mod_rewrite.c> RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !^(.*)\.(gif|png|jpg|css|ico|js)$ [NC] RewriteRule ^(.*)$ index.php [QSA,L] </IfModule>
これで、サイトURLから「html」が消え、「http://ドメイン/」でアクセスできるようになりました。