MacOS系統用brew安裝PHP

一、安裝Homebrew

當需要在MacOS上安裝各種擴展的時候,推薦使用Homebrew,Homebrew是MacOS上的命令行模式下的軟件管理工具,與Fedora操作系統上的dnf命令類似。Homebrew 的安裝非常簡單,在安裝前,需要確認XCode或者Command Line Tools for Xcode是否安裝,但我並不使用Xcode這個龐然大物來編碼,所以只需安裝 Command Line Tools for Xcode 即可,在終端鍵入以下代碼完成安裝:

$ xcode-select --install

在終端執行下面的命令進行安裝(注意不要有換行):

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

但是,這條命令執行時下載的速度非常慢,此時可以下載這個bash命令文件,修改裏面的軟件源的位置爲國內的軟件源,以提高下載速度,詳細過程如下:

下載官網提供的安裝腳本,保存爲本地brew_install文件:

$ curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install >> brew_install

打開brew_install文件,更改腳本中的資源鏈接爲清華大學的鏡像,修改語句:

BREW_REPO = "https://github.com/Homebrew/brew".freeze

爲:

BREW_REPO = "https://mirrors.tuna.tsinghua.edu.cn/git/homebrew/brew.git".freeze

當然也可以換成別的軟件源,修改之後執行:

$ /usr/bin/ruby brew_install

安裝成功之後執行下面的命令檢查是否安裝成功:

$ brew -v

注:直接執行安裝會很慢,可爲brew添加清華大學鏡像源:

$ echo 'export HOMEBREW_BOTTLE_DOMAIN=https://mirrors.tuna.tsinghua.edu.cn/homebrew-bottles' >> ~/.bash_profile
$ source ~/.bash_profile

下面列出brew命令的常見用法

用brew命令搜索軟件:

$ brew search autoconf

用brew安裝軟件

$ brew install autoconf

查看軟件信息

$ brew info autoconf

更新某一軟件

$ brew upgrade autoconf

卸載軟件

$ brew remove autoconf
$ brew uninstall autoconf

刪除程序,和upgrade一樣,單個軟件刪除和所有程序刪除

$ brew cleanup autoconf
$ brew cleanup

查看哪些軟件可以升級

$ brew outdated

查看已經安裝的軟件列表

$ brew list

 

二、安裝Apache

推薦使用如下命令首先安裝Apache2,畢竟自帶的配置管理都不太方便:

$ brew install apache2

相關的配置在後面配置PHP時一起介紹。

 

三、安裝PHP

然後使用下面的命令安裝php:

$ brew install php

如果需要指定版本,請首先確認源的版本,可以使用命令查詢:

$ brew search php

安裝成功之後,可以通過如下命令檢查版本信息:

$ php -v
PHP 7.4.0 (cli) (built: Nov 29 2019 16:18:44) ( NTS )
Copyright (c) The PHP Group
Zend Engine v3.4.0, Copyright (c) Zend Technologies
    with Zend OPcache v7.4.0, Copyright (c), by Zend Technologies
$ phpize -v
Configuring for:
PHP Api Version:         20190902
Zend Module Api No:      20190902
Zend Extension Api No:   320190902

如需安裝xdebug,可先到xdebug的官網下載最新版的源碼,解壓縮之後進入源碼目錄,然後依次執行下面的命令,完成安裝:

$ phpize
$ ./configure
$ make
$ sudo make install

安裝成功之後需要修改php.ini的配置信息,確保php能夠正確載入xdebug擴展文件。此時需要知道brew默認的安裝位置。在MacOS上,brew的默認安裝是在/usr/local/Cellar目錄中,但是同時會在/usr/local/opt目錄中建立對應的軟連接。

用brew安裝的PHP對應的php.ini文件是放在/usr/local/etc/php目錄中的,需要在該目錄中找到對應正確的版本。

我們不用打開和修改php.ini配置文件,而是繼續進入conf.d目錄,如果成功安裝,在這裏應該已經有了一個ext-opcache.ini的文件,我們可以依葫蘆畫瓢,創建一個ext-xdebug.ini的文件,並輸入以下內容(請注意xdebug的正確安裝目錄):

[xdebug]
zend_extension=/usr/local/opt/php/pecl/20190902/xdebug.so
xdebug.remote_enable = 1
xdebug.collect_params = 4

保存,並再次執行下面的命令就能看到xdebug正確載入的信息:

$ php -v
PHP 7.4.0 (cli) (built: Nov 29 2019 16:18:44) ( NTS )
Copyright (c) The PHP Group
Zend Engine v3.4.0, Copyright (c) Zend Technologies
    with Zend OPcache v7.4.0, Copyright (c), by Zend Technologies
    with Xdebug v2.8.1, Copyright (c) 2002-2019, by Derick Rethans

修改apache2的配置文件,載入php擴展,修改如下內容:

$ sudo vi /usr/local/etc/httpd/httpd.conf
LoadModule php7_module /usr/local/lib/httpd/modules/libphp7.so

然後還需要配置對php文件的支持,可以用以下命令建立配置文件,該配置文件apache2啓動時會自動載入:

$ sudo vi /usr/local/etc/httpd/other/php7.conf

在這個文件中輸入以下內容:

<IfModule php7_module>

    AddType application/x-httpd-php .php
    AddType application/x-httpd-php-source .phps

    <IfModule dir_module>
        DirectoryIndex index.php index.html
    </IfModule>

    <IfModule alias_module>
        Alias /php "/Volumes/HD_2/Project/PHP"

        <Directory "/Volumes/HD_2/Project/PHP">
            Options Indexes MultiViews FollowSymLinks
            AllowOverride All
            Order allow,deny
            Allow from all
            Require all granted
        </Directory>

    </IfModule>

</IfModule>

這裏的配置含義是:如果載入了php擴展模塊則增加PHP文件類型支持,以及增加index.php文件的目錄優先級。並且,如果載入了別名擴展模塊,則增加一個虛擬目錄別名,指向具體項目目錄。

到這裏就完成了基本配置,執行phpini()也能看到信息輸出。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章