2013-12-11 63 views
27

在我的Mac上,我已經安裝了PHP並且工作正常。我最近想安裝mcrypt,所以我使用了brew。雖然它似乎安裝得很好,但它並沒有出現在我的phpinfo()中。所以我認爲brew中安裝了mcrypt的php並不是apache使用的php。如何使用brew安裝的php?

有誰知道我可以:

  1. 檢查是否有通過BREW安裝了PHP和Apache使用PHP之間的區別嗎?
  2. 讓apache使用brew安裝的php?

歡迎所有提示!

+0

參見:[設置的Apache,MySQL和PHP在MacOS塞拉利昂使用自制](https://lukearmstrong.github.io/2016/12/setup-apache-mysql-php-homebrew-macos-sierra/ ) – kenorb

回答

33

你必須讓你的Apache使用你剛剛下載的PHP。

  • 打開httpd.conf(我的是在/etc/apache2/httpd.conf),並查找加載PHP模塊行,是這樣的:

    LoadModule php5_module path/to/php

  • 然後,使其指向釀造PHP通過mcrypt支持爲您安裝。我在這條路上。您可以根據您安裝的PHP版本而有所不同。

    /usr/local/Cellar/php54/5.4.21/libexec/apache2/libphp5.so

  • 最後,您將需要重新啓動Apache服務器加載新的配置:

    sudo apachectl restart

+0

太棒了!你救了我的一天!太感謝了! – kramer65

21

無法在計算器還由於我缺乏經驗發表評論但要補充上面的答案是正確的。只是一個附加的註釋,找到正確的路徑:

運行:

brew info php54 

或以往版本u必須安裝,它會告訴你的路徑:

To enable PHP in Apache add the following to httpd.conf and restart Apache: 
    LoadModule php5_module /usr/local/opt/php54/libexec/apache2/libphp5.so 
+1

對於PHP 5.5,它是'/ usr/local/opt/php55/libexec/apache2/libphp5.so',它更好,因爲它在更新PHP 5.5版本時不會改變。 – simPod

+1

我真的希望能夠以這種方式找到我的.so文件,但是當我做'info info php71'時,它不會讓我回到你在這裏的相同的行。我收到了一堆其他信息,但沒有在這個文件的位置。我想知道我是否可以有不同的釀造版本。 – Metropolis

+1

似乎與https://github.com/Homebrew/homebrew-php/issues/3601 – Metropolis

2

我想創建一個別名所以你不要打擾系統的PHP安裝。

brew info php71 

釀造安裝到/usr/local/Cellar這樣你就可以添加以下到您的~/.bash_alias~/.profile

alias php7='/usr/local/Cellar/php71/7.1.10_21/bin/php'