升级到 El Capitan OS 后 mcrypt 出错
Posted
技术标签:
【中文标题】升级到 El Capitan OS 后 mcrypt 出错【英文标题】:Error in mcrypt after upgrading into El Capitan OS 【发布时间】:2015-12-30 18:17:16 【问题描述】:我刚刚将我的操作系统升级到 El Capitan。我必须对我的 apache 配置进行一些更改,以使一切都像以前一样工作。
感谢 - http://coolestguidesontheplanet.com/get-apache-mysql-php-and-phpmyadmin-working-on-osx-10-11-el-capitan/
对我不起作用的一件事是 Mcrypt 扩展。有谁知道如何更新它以使其正常工作?
【问题讨论】:
你可以关注这个答案:***.com/questions/31879056/… 【参考方案1】:可能是与新的System Integrity Protection 或“SIP”有关的问题吗? 检查 /usr 文件夹的权限并根据需要更改它们可能会有所帮助。
【讨论】:
【参考方案2】:升级到 El Capitan 后,mcrypt.so 已从
移出/usr/lib/php/extensions/no-debug-non-zts-20121212
到
/Library/SystemMigration/History/Migration-(UUID)/QuarantineRoot/usr/lib/php/extensions/no-debug-non-zts-20121212/mcrypt.so
为了能够复制回移动的文件,首先,您必须按照http://www.howtogeek.com/230424/how-to-disable-system-integrity-protection-on-a-mac-and-why-you-shouldnt 此处所述禁用 SIP
然后将移动的 mcrypt.so 复制回 /usr/lib/php/extensions/no-debug-non-zts-20121212
最后重启 Apache
【讨论】:
【参考方案3】:如果您查看 Coolest Guides On The Planet 的 mcrypt 单独页面,他们建议禁用 SIP。但有一种方法可以解决这个问题。照常遵循指南(跳过 SIP 部分),在运行 /usr/bin/phpize
后,您可以覆盖 make
正在使用的扩展目录。
首先为你的 php 扩展创建一个新家:
mkdir -p /usr/local/lib/php/extensions
然后运行:
./configure
make
sudo make EXTENSION_DIR='/usr/local/lib/php/extensions' install
最后,当您将扩展名添加到 php.ini
时,最直接的选择是包含文件的完整路径。
extension=/usr/local/lib/php/extensions/mcrypt.so
到目前为止,这对我有用。
间接引用:Error configuring mcrypt after upgrading to El Capitan (Ask Different)Comment by Jon Gardner that started me on the path
【讨论】:
以上是关于升级到 El Capitan OS 后 mcrypt 出错的主要内容,如果未能解决你的问题,请参考以下文章
升级到 El Capitan 后出现无效的活动开发者路径错误
升级到 OSX El Capitan 后 iOS 模拟器 NSPOSIXErrorDomain Code=2
OS X 10.11.6 El Capitan SSLRead()返回错误-9841