1

拡張機能を書きました。

Ubuntu システム。

php -c "/etc/php5/apache2/php.ini" -r "echo extension_loaded('my');"
 => 1 OK!

しかし、Apacheの下では何もありません!

echo extension_loaded('my'); 
=> "" 

なんで?

Php ini ショー:

"Loaded Configuration File /etc/php5/apache2/php.ini"

4

2 に答える 2

1

私はいつも拡張子を別々のファイルに入れ、その中に入れます

/etc/php5/apache2/conf.d/

mongo php 拡張機能をロードしたいとします。次の手順を実行します。

sudo pecl install mongo

それが正常に完了したら、

echo "extension=mongo.so" | sudo tee /etc/php5/apache2/conf.d/mongo.ini

その後、サーバーをリロードまたは再起動します

sudo service apache2 restart

于 2013-08-30T11:42:11.770 に答える
0

私は同じ問題を抱えていました。問題は、Apacheで実行しているときに拡張パスが相対的であることだと思います。

デフォルト設定

extension_dir = "ext"
PHP が直接呼び出されるため、CLI で動作します。

Apacheの下で実行している場合、スラッシュで絶対パスを指定すると動作するようになりました:

extension_dir = "c:/php/ext"
于 2013-12-28T12:33:57.847 に答える