EC CUBE3 [推奨] mcrypt 拡張モジュールが有効になっていません。

これまたEC CUBE3なんだけど[推奨]って書いてあるから無くてもいいかなって思いつつ推奨なんだったら入れてみよう(本番サーバーで入れれるかは知らんけど)。

php.iniを弄ればいいかな?と思ってパスを調べてみたら

/etc/php5/apache2/php.ini

にあるようなので早速チェックしてみる。

ls /etc/php5/apache2/
vi php.ini

いつものように :set numberで行番号表示して /mcrypt で検索してみると項目はある。

1813 [mcrypt]
1814 ; For more information about mcrypt settings see http://php.net/mcrypt-module-open
1815 
1816 ; Directory where to load mcrypt algorithms
1817 ; Default: Compiled in into libmcrypt (usually /usr/local/lib/libmcrypt)
1818 ;mcrypt.algorithms_dir=
1819 
1820 ; Directory where to load mcrypt modes
1821 ; Default: Compiled in into libmcrypt (usually /usr/local/lib/libmcrypt)
1822 ;mcrypt.modes_dir=

こんな感じで書いてあるけどディレクトリを指定するような形になってるな・・・。 何かインストールする必要があるんだろうか。

通常このパス(/usr/local/lib/libmcrypt)を指定すればオーケーみたいに書いてあるけど /usr/local/lib/ を見てみてもlibmcryptってディレクトリすら無い。

mcript.iniが /etc/php5/mods-available/ にあったので開いてみる。

; configuration for php MCrypt module
extension=mcrypt.so

とだけ書いてあった。

一体どうしたらいいんだこれ。

mcrypt.soを検索してみると usr/lib/php5/20121212/ にあった。 不思議なディレクトリ名だなこれ。

extension_dir = "usr/lib/php5/20121212/"
extension=mcrypt.so

とphp.iniに追記して

sudo /etc/init.d/apache2 restart

apache再起動。

見事に「[推奨] mcrypt 拡張モジュールが有効になっていません。」のメッセージが消えました。

EC CUBE, Linux, PHP

Posted by bistro