mac 啟動php-fpm

來源:互聯網
上載者:User
  • Mac OS X 10.9已經內建有php-fpm,對於有乾淨系統強迫症的人,或者原裝控來說,用brewhome重裝一遍總感覺心裡會有小兔子,下面把原裝的php-fpm配置起來。

    直接運行,有報錯找不到設定檔。

    $ php-fpm

    [11-Jan-2014 16:03:03] ERROR: failed to open configuration file '/private/etc/php-fpm.conf': No such file or directory (2)

    [11-Jan-2014 16:03:03] ERROR: failed to load configuration file '/private/etc/php-fpm.conf'

    [11-Jan-2014 16:03:03] ERROR: FPM initialization failed

    可以在/private/etc/ 目錄下組建組態檔案,需要root許可權(sudo)

    或者在普通使用者有許可權的目錄裡放置設定檔,通過--fpm-config參數指定設定檔的位置,如下:

    # cp /private/etc/php-fpm.conf.default /usr/local/etc/php-fpm.conf

    $ php-fpm --fpm-config /usr/local/etc/php-fpm.conf

    [11-Jan-2014 16:10:49] ERROR: failed to open error_log (/usr/var/log/php-fpm.log): No such file or directory (2)

    [11-Jan-2014 16:10:49] ERROR: failed to post process the configuration

    [11-Jan-2014 16:10:49] ERROR: FPM initialization failed

    錯誤資訊顯示:不能正確的開啟”日誌“檔案,原因是預設在/usr/var目錄下工作,可以修改設定檔指定正確的記錄檔路徑

    $ vim /usr/local/etc/php-fpm.conf

    修改php-fpm.conf檔案中的error_log項,預設首碼是/usr/var ,但並沒有這個路徑

    error_log = /usr/local/var/log/php-fpm.log

    pid = /usr/local/var/run/php-fpm.pid

    或者不修改設定檔中配置項的路徑,在php-fpm的運行參數中(-p)指定放置運行時檔案的相對路徑首碼

    $ php-fpm --fpm-config /usr/local/etc/php-fpm.conf --prefix /usr/local/var

    到此,php-fpm守護進程已經基本可以正確的啟動了。

    下面我們看下php.ini設定檔及擴充的安裝。

    首先看下編譯參數,有些值是編譯進執行程式的,無法更改。

    $ php -i|grep config

    找到設定檔(php.ini)、目錄的位置,下面兩項的值指定

    '--with-config-file-path=/etc'

    '--with-config-file-scan-dir=/Library/Server/Web/Config/php'

    所以我們需要在/etc目錄下建立php.ini,Mac在/private/etc,/etc下均提供了範例檔案php.ini.default,通過查驗,兩個檔案完全相同,所以複製哪一個都無所謂,Mac有提供md5而不是Linux下的md5sum:

    $ md5 /private/etc/php.ini.default /etc/php.ini.default

    MD5 (/private/etc/php.ini.default) = 1c47241665ea5efdc55fd5809f675449

    MD5 (/etc/php.ini.default) = 1c47241665ea5efdc55fd5809f675449

    /etc目錄許可權root:wheel,需要root許可權或使用sudo,關於如何設定Mac的sudo命令需要的密碼,請查看

    http://support.apple.com/kb/HT4103?viewlocale=zh_CN&locale=zh_CN

    http://support.apple.com/kb/PH6515?viewlocale=zh_CN

    # cp /etc/php.ini.default /etc/php.ini

    變更own,以後修改不用老是切換root,生產環境最好不要改

    # chown <你的使用者名稱> /etc/php.ini

    # chmod u+w /etc/php.ini

    安裝PHP擴充

    /Library/Server/Web/Config/php 這個目錄並不存在,或者Mac OS X Server版本有吧,不知道,手動建立他,以root許可權

    # mkdir -p /Library/Server/Web/Config/php

    編譯擴充,brewhome是另起爐灶,brew方式安裝擴充需要依賴php,如php54-redis會依賴php54,至於編譯出來的擴充是否可以配置到內建的,沒有實驗過。下面以php_discuz擴充(https://github.com/potterhe/php_discuz下載)為例。

    假如擴充源碼在/Users/apple/php_discuz目錄

    $ ./configure

    $ make

    擴充編譯後,預設會儲存在 /Users/apple/php_discuz/modules/discuz.so

    將擴充在設定檔中開啟

    $ echo "extension=/Users/apple/php_discuz/modules/discuz.so" > /Library/Server/Web/Config/php/discuz.ini

    測實驗證

    $ php -i|grep discuz

    discuz support => enabled

    運行用例測試

    $ php -f /Users/apple/php_discuz/discuz.php

以上就介紹了mac 啟動php-fpm,包括了方面的內容,希望對PHP教程有興趣的朋友有所協助。

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.