我写了我的扩展名。
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"
答案 0 :(得分: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
答案 1 :(得分:0)
我遇到了同样的问题,我认为问题是在apache下运行时扩展路径的相对性。
默认设置
extension_dir = "ext"在CLI中有效,因为PHP是直接调用的。
当在apache下运行时,我在使用正斜杠指定绝对路径时让它工作:
extension_dir = "c:/php/ext"