Mac系統上雖然自帶PHP和Apache,但是有時不是我們想要的版本呢。今天我們就在macOS Sierra(10.12.1)上安裝比較新的版本的PHP版本,也就是PHP7.0+了。本篇博客我們安裝的Apache是2.4的版本, MySQL5.7.16。稍後會詳細介紹這一過程。
一、安裝前的准備
1.安裝或更新Homebrew
Homebrew就不做過多贅述了,也不是在博客中第一次提到了,是Mac上不可或缺的包包管理器。下方截圖中是我本地使用的brew的版本信息,當然是目前最新的版本。在安裝上述相關內容之前,要確保你的brew是最新版本。關於Mac下Homebrew的安裝在此就不做過多贅述了,請自行Google。
下方首先進行了brew update的更新操作,提示我當前的brew是最新的版本。我們可以通過brew -v來查看當前的brew版本。如果你對brew使用的不熟的話,可以使用brew -h來查看brew的相關命令操作。具體如下所示:
2.Xcode8.2
確保你的Xcode是最新版本,如果你的Xcode是8.2之前的版本的話,在你編譯PHP7.0+的時候會提示你“更新Xcode”版本,下方就是在Xcode8.1下編譯PHP7.0時報的錯誤。
所以,要保證你的Xcode是當前最新的版本,下方就是我更新後的Xcode8.2版本。
二、Apache2.4的安裝
當然,使用brew安裝Apache2.4是比較簡單的。下方就是安裝Apache2.4的命令。先使用brew的tap命令來創建Apache的倉庫,然後使用install命令來安裝Apache。此處要安裝的是Apache2.4,所以是brew install httpd24。如果你要安裝Apache2.2,那麼就是brew install httpd22。
brew tap homebrew/apache
brew install httpd24
具體過程如下所示:
成功安裝完畢後,你可以使用brew info httpd24來查看你安裝的Apache2.4的具體信息。其中會有啟動Apache服務的相應命令。下方就是使用brew操作Apache服務器的相應操作。
啟動Apache:brew services start homebrew/apache/httpd24
重啟Apache:brew services restart homebrew/apache/httpd24
關閉Apache:brew services stop homebrew/apache/httpd24
下方截圖中是具體的Apache的信息:
稍後安裝完PHP7.0後,我們會對Apache進行統一配置,不過我們可以先將Apache的服務進行啟動,先使用其默認配置。下方就是啟動後對我們Apache服務的訪問。當然默認是8080端口,所以你需要訪問的地址為:localhost:8080,訪問該地址你會看到下方的信息。在浏覽器中可以訪問到下方的頁面,說明你的Apache已經成功安裝了。
三、MySQL的安裝
MySQL的安裝也是比較簡單的,之前我們在介紹Swift的Perfect服務端框架的時候用到過,也就是說我本地之前已經通過brew安裝過了MySQL數據庫了。當然如果你沒有安裝,那麼使用brew安裝MySQL也是比較簡單的。下方就是安裝mysql的命令,你需要等上一會兒,你的MySQL就安裝好了。
brew install mysql
按照之前的套路,安裝好MySQL數據庫後,你可以使用brew info mysql命令來查看相應的mysql的信息。下方就是我本地mysql相應的信息。從info中可以清楚的看到,在你初次安裝MySQL之後,會有一個沒有密碼的root供你登錄MySQL數據庫,登錄後你可以為root用戶設置一個密碼。
從上面的信息中,我們還可以看到啟動mysql服務器的命令。當然,我們依然使用brew來啟動和關閉MySQL服務,如下所示:
啟動:brew services start mysql
重啟:brew services restart mysql
停止:brew services stop mysql
具體操作如下所示:
在之前的博客中也提到過,對MySQL的可視化管理,在Mac上的Sequel Pro還是比較好用的,如下所示:
四、PHP7.0的安裝
接下來,我們要使用brew來安裝PHP7.0了。在這個過程中遇到些問題,首先是Xcode版本的問題,我之前沒有升級最新的Xcode8.2,然後安裝PHP7.0時報錯,後來就升級了一下Xcode。然後又遇到了其他問題,稍後會介紹到。
1、查看PHP7.0信息
在使用Brew安裝PHP7.0之前,我們最好先看一下相應的安裝信息,因為使用brew安裝PHP時也是有些可選項的,如果有些可選項你沒有添加,那麼有可能在Apache中就無法使用,所以在安裝之前看一下PHP的相關信息還是比較好的。
下方就是使用brew info php70, 查看的相應信息,當然你也可以安裝PHP7.1。下方給出了沖突的PHP版本。並且給出了相應的依賴包。當然我們還沒有安裝PHP7.0所以大部分是打的X號。下方有些可選項,需要在安裝PHP7.0的使用使用。從下方我們可以清楚的看到,如果你要在Apache2.4上使用該PHP版本,那麼得加上--with-httpd24這個參數。這個參數是不可或缺的,如果你沒有添加,那麼你安裝的PHP將不能在相應的Apache上進行使用,如下所示。
2.創建PHP倉庫和安裝PHP7.0
下方就是PHP7.0安裝的命令。--with-httpd24必須得添加上,不然不能在Apache2.4上進行使用。
brew tap homebrew/php
brew install php70 --with-httpd24
下方是我在安裝PHP7.0時遇到的一個錯誤,直接使用brew install php70就可以安裝成功,而添加上--with-http24就會報下方的錯誤。在下方的錯誤提示中,給出了解決問題的相應連接“https://github.com/Homebrew/homebrew-php/issues/3736”。在此github連接中找到了相應的解決方案,在終端執行xcode-select --install後,再reinstall就OK了。
3.查看安裝後的PHP相關信息
下方就是安裝好的PHP70的相關信息,當然,有些還是打叉的,如果需要,我們可以在後期進行添加。
在Info中有好多關鍵信息,下方這段就是PHP70在Apache中的配置,我們需要在Apache中的httpd.conf文件中,將下方的配置項加入進去即可,稍後會詳細介紹。
五、Apache配置
接下來我們就要配置我們的Apache服務器了,當然,主要還是Apache2.4與PHP7.0的關聯。上面也提到了,本篇博客我們主要對httpd.conf文件的配置。首先打開/usr/local/etc/apache2/2.4/httpd.conf文件,也就是Apache2.4的相關配置文件。
首先我們將相應的PHP版本配置進去,也就是PHP,Info中的那些配置信息粘貼到httpd.conf中。如下所示:
然後配置服務器的文檔根目錄,如下所示:
如果需要的話,添加上index.php索引文件,如下所示:
重啟完Apache服務後,我們就可以對其進行測試了,在wwwdoc中添info.php方法,在文件中使用phpinfo()函數打印出相應的php信息。如下所示。
接下來我們就可以在浏覽器中訪問這個info.php文件了,如下所示:
至此,本篇博客的內容就結束了,接下來就是在Mac下好好玩玩兒PHP了。好像有人戲說PHP是(拍 H 片)的簡稱,子曰:此乃神人也。