Apache默認是把PHP做爲自己的一個模塊(mod_php)來運行的,而Nginx是以FastCGI方式運行的。因此使用Nginx+PHP就是直接配置爲FastCGI模式。php
下載地址: http://php.net/downloadshtml
#下載PHP cd /usr/local/src/ wget http://cn2.php.net/distributions/php-5.5.0.tar.gz #安裝依賴包 yum -y install gcc make gd-devel libjpeg-devel libpng-devel libxml2-devel bzip2-devel libcurl-devel #編譯安裝,如下參數支持,ftp,圖片函數,pdo等支持,由於使用了php自帶的mysqlnd,因此不須要額外安裝mysql的lib庫了.若是你是64位系統,參數後面加上--with-libdir=lib64,若是不是能夠跳過。 tar -zxvf php-5.5.0.tar.bz2 cd php-5.5.0 ./configure --prefix=/usr/local/php-5.5.0 --with-config-file-path=/usr/local/php-5.5.0/etc --with-bz2 --with-curl --enable-ftp --enable-sockets --disable-ipv6 --with-gd --with-jpeg-dir=/usr/local --with-png-dir=/usr/local --with-freetype-dir=/usr/local --enable-gd-native-ttf --with-iconv-dir=/usr/local --enable-mbstring --enable-calendar --with-gettext --with-libxml-dir=/usr/local --with-zlib --with-pdo-mysql=mysqlnd --with-mysqli=mysqlnd --with-mysql=mysqlnd --enable-dom --enable-xml --enable-fpm --with-libdir=lib64 make&&make install #配置PHP cp php.ini-production /usr/local/php-5.5.0/etc/php.ini cp /usr/local/php-5.5.0/etc/php-fpm.conf.default /usr/local/php-5.5.0/etc/php-fpm.conf #啓動php-fpm /usr/local/php-5.5.0/sbin/php-fpm #查看進程 netstat -lnt | grep 9000 tcp 0 0 127.0.0.1:9000 0.0.0.0:* LISTEN
nginx+php的配置比較簡單,核心就一句話:把請求的信息轉發給9000端口的PHP進程,讓PHP進程處理指定目錄下的PHP文件mysql
location ~ \.php$ { root html; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; # 告訴PHP進程,當前的腳本是 $document_root$fastcgi_scriptname,PHP會去找這個腳本並處理,因此腳本的位置要指對 fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; }