在升级到Mac OSX Sierra时面临加密错误问题


Facing mcrypt error issue on upgrading to Mac OSX Sierra

从El Capitan升级到Mac OSX Sierra后,只要我运行php,它就会拒绝运行以前安装在我系统上的任何php项目。在互联网上探索了这个问题之后,我有了这些选择…运行以下命令后:

cd /etc/apache2/
sudo mv httpd.conf httpd.conf.sierra
sudo mv httpd.conf~previous httpd.conf
cd ..
sudo cp php.ini-previous php.ini
sudo apachectl restart

我使我的php项目工作像一个魅力。但现在我遇到了另一个问题。这是php mcrypt扩展错误。当我运行php项目(laravel 4.2项目)时,项目不工作,并向我显示错误-"需要php加密扩展!"请帮我解决这个问题。我的php.ini文件的加密行如下所示

; Directory in which the loadable extensions (modules) reside.
; http://php.net/extension-dir
; extension_dir = "./"
extension_dir = "/usr/lib/php/extensions/no-debug-non-zts-20121212/"
; extension_dl = On
extension=mcrypt.so
; On windows:
; extension_dir = "ext"

你能告诉我我的系统出了什么问题吗

我解决了我的问题…要使mcrypt扩展工作(如果在升级后出现错误)然后按照这个指南从头开始…

请从上面提到的指南中使用libcrypt和php的更新版本(php 5.6 -自带OSX Sierra)。

如果你的mysql停止工作后遵循上述过程(因为它发生在我身上:(),然后只是删除所有的.err文件从目录/usr/local/mysql/data重新启动你的mysql再次有关更多信息-请参阅

重新启动MySQL
sudo /usr/local/mysql/support-files/mysql.server restart

希望它能帮助你升级你的Mac OSX没有任何问题,节省你宝贵的时间…!!: D

brew install homebrew/php/php70-mcrypt

您需要设置动态扩展。

这一行是你的问题:

; extension_dl = On

你必须去掉";"

在我的例子中,我通过以下步骤使它工作:

  • 安装XAMPP与PHP 7.0
  • 在bash配置文件

    中添加了以下内容
     export PATH=/Applications/XAMPP/xamppfiles/bin/:$PATH
    

顺序非常重要,因为它会在系统版本(5.6)之前找到php 7.0。