2012-08-08 120 views
5

我在Mac OS X 10.6.8上使用MAMP 2.1 - 這是PHP的OpenSSL擴展,但只有0.9版本 - 我需要升級到1.0 - 但我不確定我將如何去做這樣的工作。任何人都可以幫忙嗎?如何升級MAMP中的OpenSSL

+1

升級mamp,或自己編譯擴展。當您使用預打包版本的PHP時,這並不是一件特別容易的事情。 – 2012-08-08 21:02:54

+0

我正在使用MAMP的最新版本 – Ash 2012-08-08 21:05:47

+0

您是否找到一些解決方案?我有與MAMP 3.0.6 PHP 5.5.14相同的問題,但OpenSSL只有0.9.8r ...我怎麼能更新它PLZ? – 2015-02-09 16:05:32

回答

-1

您可以按照這些指示 我是從here

升級步驟

1)確保你已經安裝了XCode的命令行工具。

我們將需要一個C編譯器和其他庫來升級cURL。 因此,啓動一個終端,您將繼續使用本文檔中的每個步驟 。

xcode-select --install

2)安裝家釀的OpenSSL庫

的目標是通過 http://brew.sh進行編譯所提供的OpenSSL庫捲曲,所以如果你沒有自制安裝的是,遵循 說明在他們的網站上,或者謹慎地運行這個命令:

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" 

接下來,安裝L中的OpenSSL庫:

brew install openssl 

3)檢查捲曲版本包含甲基苯丙胺

我們只是想確認我們正在使用的捲曲的版本,因爲我們 要下載並安裝相同版本從官方捲曲 網站,haxx.se

/Applications/MAMP/Library/bin/curl-config --version 
The command should return with version 7.43.0 

確保完成下一步之前退出MAMP!

4)下載捲曲源

下載從官方網站在 curl.haxx.se/download捲曲的源代碼,或者直接把它拿來:

cd ~/Downloads 
wget https://curl.haxx.se/download/curl-7.43.0.tar.gz 

接下來,解壓壓縮包和cd到工作目錄

tar xzvf curl-7.43.0.tar.gz 
cd curl-7.43.0 

5)下載CA /證書捆綁並提取到MAMP中

默認情況下cURL不附帶任何CA文件或軟件包。您可以通過 找到您自己的源代碼,或者下載ca-bundle。從這個 儲存庫(https://github.com/lunr/mamp-curl-tls)TGZ文件並提取到 MAMP:

tar xzvf ca-bundle.tgz -C /Applications/MAMP 

6)編譯捲曲

在 工作目錄執行以下配置命令捲曲源代碼:

./configure --prefix=/Applications/MAMP/Library --with-ssl=/usr/local/Cellar/openssl/1.0.2g --with-ca-path=/Applications/MAMP/etc/openssl/certs --with-ca-bundle=/Applications/MAMP/etc/openssl/certs/ca-bundle.crt 

這個命令是專門針對自制的 Ope nSSL庫和您在步驟5中下載的CA軟件包。如果您願意,您可以在 中添加您自己的選項。

一旦命令完成後,你應該有輸出酷似 這樣:

curl version:  7.43.0 
Host setup:  x86_64-apple-darwin15.4.0 
Install prefix: /Applications/MAMP/Library 
Compiler:   gcc 
SSL support:  enabled (OpenSSL) 
SSH support:  no  (--with-libssh2) 
zlib support:  enabled 
GSS-API support: no  (--with-gssapi) 
TLS-SRP support: enabled 
resolver:   default (--enable-ares/--enable-threaded-resolver) 
IPv6 support:  enabled 
Unix sockets support: enabled 
IDN support:  no  (--with-{libidn,winidn}) 
Build libcurl: Shared=yes, Static=yes 
Built-in manual: enabled 
--libcurl option: enabled (--disable-libcurl-option) 
Verbose errors: enabled (--disable-verbose) 
SSPI support:  no  (--enable-sspi) 
ca cert bundle: /Applications/MAMP/etc/openssl/certs/ca-bundle.crt 
ca cert path:  /Applications/MAMP/etc/openssl/certs 
LDAP support:  enabled (OpenLDAP) 
LDAPS support: enabled 
RTSP support:  enabled 
RTMP support:  no  (--with-librtmp) 
metalink support: no  (--with-libmetalink) 
HTTP2 support: disabled (--with-nghttp2) 
Protocols:  DICT FILE FTP FTPS GOPHER HTTP HTTPS IMAP IMAPS LDAP LDAPS POP3 POP3S RTSP SMB SMBS SMTP SMTPS TELNET TFTP 

具體來說,審查線路安裝前綴和CA證書路徑和CA 證書捆綁,並確認它們都指向MAMP目錄。

如果是這樣,則繼續,否則,什麼是不正確有關配置 命令

7)安裝新的cURL庫

make && make install 

8)重新啓動MAMP並確認OpenSSL的版本

打開MAMP應用程序並啓動服務器。您可以使用phpinfo() 來確認在phpinfo()的curl部分下的OpenSSL版本。它 應該閱讀SSL版本:OpenSSL/1.0.2g

+0

儘管這個鏈接可能回答這個問題,但最好在這裏包含答案的基本部分,並提供參考鏈接。如果鏈接頁面更改,則僅鏈接答案可能會失效。 - [來自評論](/ review/low-quality-posts/13446636) – techspider 2016-08-24 13:59:15

+0

感謝您的評論,我改變了它 – GirginSoft 2016-08-24 14:31:31