nginx之php整合

root@localhost nginx]# yum install gd
yum install mysql*
yum -y install php-fpm
[root@localhost soft]# yum install freetype
 [root@localhost php-5.4.19]#yum -y install libpng-devel
[root@localhost php-5.4.19]# yum install libxml2* -y
[root@localhost php-5.4.19]# yum install xml2-config
wget http://museum.php.net/php5/php-5.4.19.tar.gz#http://blog.sina.com.cn/s/blog_702bd5360101f8uc.html
[root@localhost soft]# tar -zxf php-5.4.19.tar.gz
[root@localhost soft]# cd php-5.4.19
nginx+php的編譯
apache通常是把php當作本身的一個模塊來啓動的.
而nginx則是把http請求變量(如get,user_agent等)轉發給 php進程,即php獨立進程,與nginx進行通訊. 稱爲 fastcgi運行方式.
所以,爲apache所編譯的php,是不能用於nginx的.

注意: 咱們編譯的PHP 要有以下功能:
鏈接mysql, gd, ttf, 以fpm(fascgi)方式運行

編譯完畢後:
1:
./configure  --prefix=/usr/local/fastphp \
--with-mysql=mysqlnd \
--enable-mysqlnd \
--with-gd \
--enable-gd-native-ttf \
--enable-gd-jis-conv \
--enable-fpm

make &&make install

nginx+php的配置比較簡單,核心就一句話----
把請求的信息轉發給9000端口的PHP進程,
讓PHP進程處理 指定目錄下的PHP文件.

以下例子:
location ~ \.php$ {
            root html;
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
            include        fastcgi_params;

        }

1:碰到php文件,
2: 把根目錄定位到 html,
3: 把請求上下文轉交給9000端口PHP進程,
4: 並告訴PHP進程,當前的腳本是 $document_root$fastcgi_scriptname
(注:PHP會去找這個腳本並處理,因此腳本的位置要指對)
t@localhost fastphp]# cp /root/soft/php-5.4.19/php.ini-development ./lib/php.ini
[root@localhost fastphp]# ls sbin/
php-fpm#####重要
[root@localhost fastphp]# cp etc/php-fpm.conf.default etc/php-fpm.conf
[root@localhost fastphp]# ./sbin/php-fpm
[root@localhost fastphp]# ps aux|grep php
root     18790  0.0  0.2 140180  3020 ?        Ss   06:09   0:00 php-fpm: master process (/usr/local/fastphp/etc/php-fpm.conf)
nobody   18791  0.0  0.2 140180  2680 ?        S    06:09   0:00 php-fpm: pool www
nobody   18792  0.0  0.2 140180  2680 ?        S    06:09   0:00 php-fpm: pool www
root     18796  0.0  0.0 103256   832 pts/2    S+   06:09   0:00 grep php

alhost nginx]# ./sbin/nginx -s reload



php

相關文章
相關標籤/搜索