我升级到了OS X 10.9 Mavericks,并且正在重新设置本地开发环境。我按照这个帖子中提到的运行了
我没有看到任何与无法加载扩展程序相关的错误,并且
当我进入我的应用程序时,会出现以下错误:
为什么PHP不能加载扩展程序呢?
我得到了一个看起来不相关的奇怪警告,但是我会提到它以保证完整性:在php.ini中,我设置了
xcode-select --install
,这样可以成功编译扩展程序。我确认扩展程序存在于/usr/lib/php/extensions/no-debug-non-zts-20100525
中,并且我已经在php.ini文件中添加了extension=redis.so
。我没有看到任何与无法加载扩展程序相关的错误,并且
phpinfo()
报告了预期的extension_dir,并在其输出中显示了extension=redis.so
,确认我将其放入了正确的文件中。不幸的是,这是phpinfo()
输出中唯一的'redis'痕迹。当我进入我的应用程序时,会出现以下错误:
Fatal error: Class 'Redis' not found in /Volumes/Storage/ty/Sites/audiomack/application/Bootstrap.php on line 95
我曾经使用sudo pecl install redis
进行安装,并手动下载phpredis zip并自己编译过一次,但结果相同。为什么PHP不能加载扩展程序呢?
我得到了一个看起来不相关的奇怪警告,但是我会提到它以保证完整性:在php.ini中,我设置了
date.timezone = America/New_York
,但我的设置似乎被忽略了。PHP info的“date”部分仍将date.timezone显示为“no value”,并给出了我们都看过一百次的警告:
It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected the timezone 'UTC' for now, but please set date.timezone to select your timezone. in /Volumes/Storage/ty/Sites/audiomack/public/phpinfo.php on line 2
编辑:是的,我已经反复重启了apache,但没有进展。
phpinfo()
的输出将告诉您哪些文件正在被解析。您可能已经修改了控制CLI的文件,但是正在使用SAPI .ini文件。 - Marc B