mac搭建nginx與php


第一步:關閉Apache及開機啟動

要使用nginx,最好停用mac中自帶的Apache。停用很簡單:

sudo launchctl unload -w /System/Library/LaunchDaemons/org.apache.httpd.plist

第二步:安裝homebrew

homebrew是mac下的包管理器,類似於linux下的yumapt。使用homebrew安裝nginxphpmysql要比手動安裝方便很多。官網地址:http://brew.sh/index_zh-cn.html

 安裝:

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

第三步:安裝nginx

安裝:brew install nginx

啟動:sudo nginx

停止:sudo nginx -s quit

配置nginx:

/usr/local/var/log/nginx/下,新建文件:access.logerror.log (如果安裝時已經創建就無需再創建)

配置/usr/local/etc/nginx/nginx.conf

#user  nobody;
worker_processes  1;

error_log  /usr/local/var/log/nginx/error.log; //注 此處需指定絕對路徑 默認為相對路徑

pid        /usr/local/var/run/nginx.pid; //注 此處需指定絕對路徑 默認為相對路徑(若不設置絕對路徑容易出現nginx.pid丟失,導致nginx無法啟動或無法關閉)

events {
    worker_connections  1024;
}


http {
    include       mime.types;
    default_type  application/octet-stream;
    access_log  /usr/local/var/log/nginx/access.log;
    sendfile        on;
    keepalive_timeout  65;

    #
    include conf.d/*.conf;
}

如需添加server可進行如下配置:

在 /usr/local/etc/nginx/nginx.conf 里 http 配置里添加

 server {
        listen       80  default_server;
        server_name  localhost;    #域名,自定義
        root   網站根目錄;    #自定義,如/var/www
        index  index.html index.htm
 }

測試:在你設定的根目錄下(例如/var/www/),新建一個靜態頁index.html,啟動nginx,在瀏覽器中輸入localhost,成功看到靜態頁內容。

第四步:安裝php

首先,在brew中添加php的源:

brew tap josegonzalez/php
brew tap homebrew/dupes

查看已添加的源:brew tap

搜索可安裝的php:brew search php

安裝最多的是php55,安裝前首先查看一下安裝相關參數的說明:

brew search php55

安裝:

brew install php55 --with-fpm, --with-enchant, --with-debug

由於國內網絡限制可能其中某些包需要翻牆下載安裝。

成功安裝后,啟動php-fpm:(php-fpm相當於一個接口,nginx和php之間通信通過php-fpm這個東西)

launchctl load -w /usr/local/opt/php55/homebrew.mxcl.php55.plist

停止php-fpm:

launchctl unload -w /usr/local/opt/php55/homebrew.mxcl.php55.plist

設置快捷指令:打開~/.bash_profile,添加

alias php55.start=launchctl\ load\ -w\ /usr/local/opt/php55/homebrew.mxcl.php55.plist
alias php55.stop=launchctl\ unload\ -w\ /usr/local/opt/php55/homebrew.mxcl.php55.plist

快捷指令設置之后,重啟終端,就可以用php55.startphp55.stop來啟動和停止php-fpm了。

重新配置nginx:配置文件/usr/local/etc/nginx/nginx.conf

  server {
        listen       80  default_server;
        server_name  localhost;    #域名,自定義
        root   網站根目錄;    #自定義,如/var/www
        index  index.html index.htm

        # pass the PHP scripts to FastCGI slinerver listening on 127.0.0.1:9000
        #
        location ~ \.php$ {
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME   網站根目錄$fastcgi_script_name;   #如/var/www$fastcgi_script_name
            include        fastcgi_params;
            fastcgi_intercept_errors on;
        }
  }

測試:重啟nginx,啟動php-fpm后,在網站根目錄下新建文件index.php,設置index.php的內容:<?php phpinfo(); ?>。然后瀏覽器中輸入:localhost/index.php,看到php信息,成功。

 

備注:

安裝時所遇到的問題:

1、無法啟動、無法關閉nginx,出現nginx.pid丟失。

/usr/local/etc/nginx/nginx.conf配置中 error及pid應設置成絕對路徑

error_log  /usr/local/var/log/nginx/error.log; //注 此處需指定絕對路徑 默認為相對路徑

pid        /usr/local/var/run/nginx.pid; //注 此處需指定絕對路徑 默認為相對路徑(若不設置絕對路徑容易出現nginx.pid丟失,導致nginx無法啟動或無法關閉)

設置完成后,再重啟下nginx,如果還是不行,重啟電腦。

 

大部分內容轉自:http://segmentfault.com/a/1190000002556269


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM