2016-09-26 2 views
4

PHP를 실행하자마자 MacOSX Sierra를 El Capitan에서 업그레이드 한 후 이전에 시스템에 설치된 PHP 프로젝트를 실행하지 않습니다. 그것은 인터넷에서이 문제를 탐구 한 후 나는 아래의 명령을 실행 한 후에 ...이 옵션을 을했다 : Mac OSX Sierra로 업그레이드 할 때 mcrypt 오류 문제 발생

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 mcrypt extension required!"오류가 표시됩니다. 내 php.ini 파일의 Mcrypt 라이브러리 라인이

; 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" 

처럼 보이는이 좀 도와주십시오 .. 당신은 내 시스템에 어떤 문제가 있는지 말해 줄 수.

+0

나는 시스템과 함께 제공되는 아파치 나 PHP를 사용하지 말고 깨끗하게 설치하고 홈브류를 통해 별도로 설치하는 것이 좋습니다. 그런 다음 전체 업그레이드를 피하고 업그레이드 문제가 발생할 때 변경합니다. –

+0

mcrypt는 사용하지 않는 것이 가장 좋습니다. abandonware이며, 수년 동안 업데이트되지 않았으며 표준 PKCS # 7 (nee PKCS # 5) 패딩을 지원하지 않으며, 바이너리로도 사용할 수없는 표준이 아닌 널 패딩 만 지원합니다 데이터. mcrypt는 2003 년으로 거슬러 올라가는 많은 [버그] (https://sourceforge.net/p/mcrypt/bugs/)를 가지고 있습니다. 대신 [defuse] (https://github.com/defuse/php-encryption) 또는 [RNCryptor] (https://github.com/RNCryptor), 그들은 완벽한 솔루션을 제공하고 있으며 유지 보수되고 있으며 정확합니다. – zaph

+0

모든 단계를 거쳤습니다 - 저는 PHP 5.6.25를 사용하고 있으며 모든 것이 컴파일되어 올바른 위치에 파일로 저장되지만 PHP API 버전 번호는 갑자기 다릅니다! 어디로 가야할지 모르지만 작동하지 않았습니다. –

답변

3

... 는 (PHP

이 libmcrypt와 PHP의 업데이트 된 버전을 사용하십시오 ... 그런 다음 처음부터 this guide에 따라 Mcrypt 라이브러리 확장 작업을 만들려면 5.6 - OSX Sierra와 함께)를 참조하십시오.

그리고 당신의 MySQL은 (는 :(나에게 일어난) 위의 과정을 folowing 후 작동을 중지하는 경우

는, 그럼 그냥 디렉토리에서 의 경우/usr/local/mysql/데이터를 모든 .ERR 파일을 제거하고 mysql을 다시 시작 추가 정보를 다시 - see this

은 MySQL이

sudo /usr/local/mysql/support-files/mysql.server restart 

그것은 당신이 어떤없이 맥 OSX를 업그레이드하는 데 도움이 희망이 명령을 사용하여 다시 시작하는 방법 문제를 해결하고 귀중한 시간을 절약 할 수 있습니다 .. !! : D 내 경우

+0

나는 가이드를 따라 갔지만, 여전히 Laravel 4.2 프로젝트에서 같은 오류가 발생합니다. Laravel 5.2는 정상적으로 작동합니다. phpinfo()는 mcrypt를 표시하지 않습니다. 시도한 자작 설치도, 그것의 아무도 아직 일하지 않았다! 어떤 생각? –

+1

@Jose, Mac OSX Sierra에서 사용하는 최신 PHP 및 libmcrypt 버전을 사용하시기 바랍니다. 제가 언급 한 가이드는 Mac OSX El Capitan을위한 것입니다. 최신 정보를 사용하여 업그레이 드하는 것을 잊지 마시고 그 가이드를 따라야하는 이유는 ... !! 그렇지 않으면 모두 매력처럼 작동합니다. –

0

동적 확장을 설정해야합니다. 당신은 제거 할 필요가

; extension_dl = On 

은 ";"

이 줄 문제입니다 (업그레이드 후 오류가 발생하는 경우) 내 문제를 해결

1
brew install homebrew/php/php70-mcrypt 
0

을 나는 다음 단계로 작업했다 : PHP와 XAMPP를 설치

  • 을 7.0
  • 추가 bash는 프로필 파일에 다음

    export PATH=/Applications/XAMPP/xamppfiles/bin/:$PATH 
    

순서가 정말 중요하기 때문에 그것은 PHP 전에 7.0을 찾을 수 있습니다 syst em one (5.6).

관련 문제