Mac os X下使用Nginx跟PHP的連接問題

安裝Nginx

使用brew包管理工具來安裝Nginx
http://brew.sh/
官網上一目瞭然,使用非常簡單。
安裝成功後,直接在terminal裏執行brew install nginx即可
安裝完,在/usr/local/Cellar/下可以看到安裝的nginx包,Cellar目錄是專門用來放brew安裝的包的,所有的相關配置文件在/usr/local/etc/nginx/下。

配置Nginx

初始的Nginx listen的是8080端口,依照慣例改成80端口即可,注意把自帶的Apache給關了。
這時候執行nginx命令,瀏覽器裏localhost就可以看到welcome了,但是還不能執行PHP文件,因爲壓根就沒配置跟PHP的連接,這裏就要使用php-fpm了,先要在nginx的配置文件裏添加fastcgi的配置:
location ~ \.php$ {
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME  /usr/local/Cellar/nginx/1.8.0/html$fastcgi_script_name;
            include        fastcgi_params;
        }
可以參照上面的配置進行對應的修改。


配置php-fpm

然後在php-fpm的配置文件裏修改error_log以及pid的配置:
進入配置文件,sudo vim /private/etc/php-fpm.conf
error_log = /usr/local/var/log/php-fpm.log
pid = /usr/local/var/run/php-fpm.pid
參照進行對應的修改。


打開php-fpm:

sudo /usr/sbin/php-fpm 

重啓nginx

nginx -s reload


在服務器根目錄下測試PHP文件。


Nginx跟Apache最直觀的區別,就是Apache可以將PHP作爲一個子模塊,從而直接解析PHP,而Nginx做不到,只能通過fastcgi模式跟PHP進行連接,當然Apache也可以用fastcgi模式。而php-fpm(進程管理器)就是管理fastcgi的工具,在PHP5.3版本之後,PHP都會自帶的。

fastcgi以及php-fpm相關知識參考:

php中fastcgi和php-fpm是什麼東西

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