3.1 CMS - EC-CUBE - インストール - インストール要件

 
3.1.1 インストール要件
3.1.2 PHP ライブラリの確認
3.1.3 httpd.conf の確認

3.1.1 インストール要件

 はて、改めて思いだしてみるに、インストール要件を読んでいなかった・・・。  インストール要件は「EC-CUBE 開発ドキュメント - システム要件」にありました。  まる写しですが
分類 ソフトウェア Version 動作確認済
ウェブサーバ Apache 2.2.x/2.4.x
mod_rewrite / mod_ssl 必須
2.2.15
PHP PHP 5.3.9 ~ 7.1.x 5.4.39 / 7.0.9 / 7.1.2
データベース PostgreSQL 8.4.x/9.x
pg_settingsテーブルへの参照権限 必須
8.4.20
MySQL 5.1.x / 5.5.x / 5.6.x / 5.7.x
(InnoDBエンジン 必須
5.1.73
SQLite
開発用途向け
3.x 3.6.20

 なんか、インストールしようとしている環境が apache24-2.4.34、php72-7.2.8、postgresql10-server-10.4_1 なので却って心配。

 また、PHP のライブラリで

分類 ライブラリ
必須ライブラリ pgsql / mysql / mysqli (利用するデータベースに合わせること)
pdo_pgsql / pdo_mysql / pdo_sqlite (利用するデータベースに合わせること)
pdo
phar
mbstring
zlib
ctype
session
JSON
xml
libxml
OpenSSL
zip
cURL
fileinfo
推奨ライブラリ hash
APCu / WinCache (利用する環境に合わせること)
Zend OPcache
mcrypt

3.1.2 PHP ライブラリの確認


pkg version -v | grep php
mod_php72-7.2.8                    =   up-to-date with index
php72-7.2.8                        =   up-to-date with index
php72-ctype-7.2.8                  =   up-to-date with index
php72-curl-7.2.8                   =   up-to-date with index
php72-dom-7.2.8                    =   up-to-date with index
php72-extensions-1.0               =   up-to-date with index
php72-filter-7.2.8                 =   up-to-date with index
php72-gd-7.2.8                     =   up-to-date with index
php72-gettext-7.2.8                =   up-to-date with index
php72-hash-7.2.8                   =   up-to-date with index
php72-iconv-7.2.8                  =   up-to-date with index
php72-json-7.2.8                   =   up-to-date with index
php72-mbstring-7.2.8               =   up-to-date with index
php72-mysqli-7.2.8                 =   up-to-date with index
php72-opcache-7.2.8                =   up-to-date with index
php72-pdo-7.2.8                    =   up-to-date with index
php72-pdo_sqlite-7.2.8             =   up-to-date with index
php72-pecl-mcrypt-1.0.1            =   up-to-date with index
php72-pgsql-7.2.8                  =   up-to-date with index
php72-phar-7.2.8                   =   up-to-date with index
php72-posix-7.2.8                  =   up-to-date with index
php72-session-7.2.8                =   up-to-date with index
php72-simplexml-7.2.8              =   up-to-date with index
php72-sqlite3-7.2.8                =   up-to-date with index
php72-tokenizer-7.2.8              =   up-to-date with index
php72-xml-7.2.8                    =   up-to-date with index
php72-xmlreader-7.2.8              =   up-to-date with index
php72-xmlwriter-7.2.8              =   up-to-date with index
php72-zlib-7.2.8                   =   up-to-date with index
 うむ、足りないと思われるものがだいぶあるなぁ。  この際、pkg でインストールしちゃいます。

pkg install php72-pdo_pgsql
pkg install php72-openssl
pkg install php72-zip
pkg install php72-fileinfo
pkg install php72-pecl-APCu
pkg install ZendFramework
pkg install php72-pecl-mcrypt
 こんなもんかしら・・・。  と思ったら、pkg でインストールしようとすると、

/etc/make.conf
 に設定しているものを無視して、インストール済のものをアンインストールして、別のものを一緒にインストールしているようなので ports でインストールすることにしました。  いちいち大変ですが・・・(memcache も必要みたいなので追加)。

cd /usr/ports/databases/php72-pdo_pgsql
make
make install
cd /usr/ports/security/php72-openssl
make
make install
cd /usr/ports/archivers/php72-zip
make
make install
cd /usr/ports/sysutils/php72-fileinfo
make
make install
cd /usr/ports/devel/pecl-APCu
make
make install
cd /usr/ports/www/zend-framework
make
make install
cd /usr/ports/security/pecl-mcrypt
make
make install
cd /usr/ports/databases/php-memcache
make
make install
 zend-framework は、オプションに気を付ける必要がありそうです。  php-memcache を使用するのですから「MEMCACHE」のチェックは必須でしょう。  わたしが使いそうなデータベースはすべてチェックをいれました。  すわわち「MYSQL」「MYSQLI」「PGSQL」「SQLITE」

 ZendFramework インストール時のメッセージを記述しておきます。


Installing ZendFramework-2.3.3_2...
***************************************************************
Now you need to adjust PHP's include_path to contain
        `/usr/local/share/ZendFramework/library'

For example, insert:
        include_path = ".:/usr/local/share/ZendFramework/library"

into `/usr/local/etc/php.ini'.

For more general information about the Zend Framework, please
visit: http://framework.zend.com/
***************************************************************
 どうも

/usr/local/etc/php.ini
 の編集が必要なようです。  書いてあるように

; UNIX: "/path1:/path2"
;include_path = ".:/php/includes"
 を

; UNIX: "/path1:/path2"
include_path = ".:/usr/local/share/ZendFramework/library"
 に変えておきます。

3.1.3 httpd.conf の確認


/usr/local/etc/apache24/httpd.conf
 で、以下の2つの行が有効であることを確認します。

LoadModule ssl_module libexec/apache24/mod_ssl.so

LoadModule rewrite_module libexec/apache24/mod_rewrite.so
 確認したうえで

service apache24 gracefil
 APC に関しては phpinfo で apcu が Enabled になっていることを確認します。