こんばんは、ファルコンM です。
さくらVPS Ubuntu でECCUBE を使用してみようと思い、インストールした。
順調にインストールし完了画面が出てきた。だが、管理画面のリンクをクリックすると「404 」のサーバーエラーが発生した。なぜだ!?
EC-CUBE 3 の問題なのか?
開発環境
- さくらVPS 1G プラン
- Ubuntu 16.04
- Apache 2.4.18
- PHP 7.0.22
- MySQL 5.7.19
インストール手順は、以下のリンクから。
URL にindex.php を追加するとアクセスできた
アクセスできない : https://( ホスト名 )/eccube/html/( 管理画面のパス )
アクセスできた : https://( ホスト名 )/eccube/html/index.php/( 管理画面のパス )
間にindex.php を入れるとアクセスできた。
アクセスできないわけではない。EC-CUBE というより、Apache の設定の問題のような気がしてきた。
mod_rewrite は有効になっているのか?
mod_rewrite は、URLの書き換え・リダイレクト処理を行うもの。それを有効にしてやる必要があるのか?
以下のコマンドで有効にする。
$ sudo a2enmod rewrite
コマンドを打つと、「Module rewrite already enabled」と表示された。
redmine かなんかをインストールしたとき、有効にする設定はしていた。これじゃない。
.htaccessの設定は有効になっているのか?
以下のコマンドでApache のconf の設定を確認する。
$ sudo vi /etc/apache2/sites-available/default-ssl.conf
( 私のサイトはhttp は許可しておらず、https だけなので、default-ssl.conf だけをいじる )
設定をよく見てみると、
ん?
EC-CUBE のディレクトリは、AllowOverride All の許可がされていない。これか。。。さくらVPSでUbuntu インストールしたとき、Apache も自動でインストールされたから、そのときのデフォルト設定で.htaccess は閉じていたのかも。
ということでdefault-ssl.conf に以下の設定を加える。
<Directory /var/www/html/eccube> Options FollowSymLinks AllowOverride All </Directory>
この設定で、eccube ディレクトリ以下の.htaccess が有効になる。つまりEC-CUBE 側で作成した.htaccess が使える設定となった。
この設定で、最初アクセスできなかったhttps://( ホスト名 )/eccube/html/( 管理画面のパス ) にアクセスすると、
アクセスできた!
なんとかできた。知識不足だからもっと知識つけないとなあ。
コメントを残す