PHP追加モジュールはどうやって入れるのでしょうか

PHP5モジュールを有効にして、phpMyadminをWebサーバ・ルートに入れたところ、「mcrypt拡張がロードできませんー」などというメッセージが出てしまいます。検索すると、多くのサイトがヒットしますが、主に、リナックスとWindowsの解決策です。どうやら、mcrypt.soというモジュールをPHPに読み込ませる必要があるようです。mcrypt.soは作成できましたが、pho.iniは編集できずロードができません。

そもそもこのような解決策でいいのかどうかわかりません。(PHP勉強します)

ここで投稿する内容ではないかもしれませんが、お分かりの方がいらっしゃいましたら教えてください。

Mac mini, Mac OS X (10.6.4)

投稿日 2010/09/23 17:36

返信
返信: 5

2010/09/24 00:36 izuruk への返信

izuruk wrote:どうやら、mcrypt.soというモジュールをPHPに読み込ませる必要があるようです。mcrypt.soは作成できましたが、pho.iniは編集できずロードができません。


おそらく php.ini のtypoだと思いますが、編集できますよ。


/private/etc/php.iniがなければ

/private/etc/php.ini.default があるはずなので、

$ cd /private/etc

$ sudo cp php.ini.default php.ini


php.iniがあれば


$ sudo chmod +w php.ini

$ sudo vi php.ini

これで正しく編集して、


$ php -i | grep mcrypt で確認後

$ sudo apachectl -k restart


で大丈夫です。


/Library/WebServer/Documents/info.php があったら、

<?php

phpinfo(); // ここをコメントアウト


でチェックしておきましょう。

2010/09/24 07:25 KENZOU への返信

さっそくのアドバイスありがとうございます。

php.iniに書き込みはできました。


最下行に

extension=/usr/lib/php/extensions/no-debug-non-zts-20090626/mcrypt.so
date.timezone = Asia/Tokyo
mysql.default_port = 3306
mysql.default_socket =


を入れて、Apacheを再起動しましたが、「mcrypt拡張がロードされませんー」のメッセージはでたままです。

ちなみに、php grepを入れてみましたが、Sintax Errorが出てしまいます。


どこか違っているのでしょうか?

参考にしたのは、このサイトこのサイトです。


もし間違っているようでしたら教えてください。

よろしくお願いいたします。

2010/09/24 10:08 izuruk への返信

Apacheを再起動しましたが、「mcrypt拡張がロードされませんー」のメッセージはでたままです。

ちなみに、php grepを入れてみましたが、Sintax Errorが出てしまいます。


どこか違っているのでしょうか?


「php grepを入れて」とありますが、ふつうは


$ php grep


Could not open input file: grep

と出るはずです。どこか違っているのでしょうね。調べたらすぐわかると思います。

Apacheを再起動する前にやるべきこと(私が書いたようなこと)を片付けないとダメでしょう。

2010/10/21 20:12 izuruk への返信

もう、解決されているでしょうか?

Mac OS XでのPHPのモジュールのインストール(追加)はちょっとややこしいですね。(^_^)


さて、私の場合、mcryptモジュールではなく、getttextのモジュールを入れた時の手順を、

http://blog.kochikuya.net/ooyama/?p=2038

ここに記載しておりますので、参考にしていただければ幸いです。


要点だけ申しますと

1. mcryptのソースコードを持ってきて、コンパイルして、インストールしておきます。

私はソースからやりましたが、macportからでも大丈夫だと思います。(やってませんが、、、)

2. Darwinのサイトから同じバージョンのPHPのapache_mod_phpソースも持ってくる。

3. ソースにある拡張関係のディレクトリ(ext)にあるmcryptをコンパイルする。

4. 出来上がった、mcrypt.soをphp.iniに記載した場所におく。


これで、OKだと思います。

そんなに難しい事はないので、挑戦してください。

2010/12/18 23:38 Hiroki への返信

>Hirokiさん

大変遅くなりましたが、お陰様で解決しました。

紹介していただいたページを見てほぼそのとおりやって、mcryptを追加することができました。

私は最初、/private/etc/php.iniをphpの設定ファイルだと思っていたのですが、php infoで確認したところ、ファイルメーカーサーバーをインストールしており、そこにphp.iniができており、そちらが設定ファイルだということがわかり、そちらに記述したところ設定が反映されました。

ありがとうございました。

このスレッドはシステム、またはAppleコミュニティチームによってロックされました。 問題解決の参考になる情報であれば、どの投稿にでも投票いただけます。またコミュニティで他の回答を検索することもできます。

PHP追加モジュールはどうやって入れるのでしょうか

Apple サポートコミュニティへようこそ
Apple ユーザ同士でお使いの製品について助け合うフォーラムです。Apple Account を使ってご参加ください。