說(shuō)一下我最近更新mac自帶php版本的經(jīng)歷,我是按照網(wǎng)上的教程更新的,主要參考的是這篇博客http://blog.csdn.net/takunha/article/details/52484769,通過(guò)Homebrew來(lái)安裝,安裝過(guò)程除了速度有點(diǎn)慢之外,其他都還算順利??裳b完之后發(fā)現(xiàn)根本找不到libphp7.so文件(Apache通過(guò)這個(gè)文件加載php模塊)。這下尷尬了,于是我就各種搜解決方案,可是網(wǎng)上說(shuō)的libphp7.so都是默認(rèn)安裝的。我開(kāi)始以為自己裝的順序有問(wèn)題,只能刪了重裝。在安裝過(guò)程中,我發(fā)現(xiàn)有這樣一句提示:With the release of macOS Sierra the Apache module is now not built by default.If you want to build it on your system ,you have to install php with the? --with-apache option.See brew options php70 for more details.大概的意思就是說(shuō)隨著mac 最新系統(tǒng)Sierra的發(fā)布,Apache加載php的模塊不再默認(rèn)生成,在安裝php7的時(shí)候,要添加--with-apache參數(shù)。shit! 坑了我一天的時(shí)間。 由于網(wǎng)上的資料都是mac最新系統(tǒng)發(fā)布之前的,所以沒(méi)人提到過(guò)個(gè)問(wèn)題,在這里特意提醒下。下面我說(shuō)一下具體更新過(guò)程。
1.首先我們需要安裝Homebrew
一條命令完美安裝:http://brew.sh/index_zh-cn.html
2.替換homebrew鏡像源
由于homebrew上面的東西 很多要么被墻,要么死慢,需要替換掉原有的brew源
這里用的清華大學(xué)的源
cd /usr/local
git remote set-url origin git://mirrors.tuna.tsinghua.edu.cn/homebrew.git
brew update
3.安裝php7
brew tap homebrew/dupes
brew tap homebrew/php
brew update
//開(kāi)發(fā)安裝php7(一定要加上后面的參數(shù))
brew install php70 --with-apxs2? --with-apache --with-gmp --with-imap --with-tidy --with-debug
//開(kāi)啟PHP70進(jìn)程
brew link php70
//輸入命令,查看是否成功(如果不成功,重啟mac即可)。
php -v
3.修改Apache配置文件
sudo vim /etc/apache2/httpd.conf
//找到大約168行,該語(yǔ)句,屏蔽后,根據(jù)自己的路徑,添加php7的.so文件
#LoadModule php5_module libexec/apache2/libphp5.so
LoadModule php7_module? /usr/local/opt/php70/libexec/apache2/libphp7.so
我的libphp7.so是默認(rèn)安裝在/usr/local/opt/php70/libexec/apache2/目錄下的,按照你的實(shí)際情況,換成你自己的安裝路徑即可。
然后將以下內(nèi)容拷貝到Apache配置文件,用于匹配php文件。
<FilesMatch ?.php$>
SetHandler application/x-httpd-php
</FilesMatch>
最后,找到 Include /private/etc/apache2/other/*.conf 這行進(jìn)入此文件將文件內(nèi)容,
修改為以下代碼:
<IfModule php7_module>
AddType application/x-httpd-php .phpAdd
Type application/x-httpd-php-source .phps
<IfModule dir_module>
DirectoryIndex index.html index.php
</IfModule>
</IfModule>
4.重啟Apache,如果不成功就重啟mac,php7即可升級(jí)成功。