继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

nginx解析php页面

LEATH
关注TA
已关注
手记 315
粉丝 93
获赞 466

nginx本身不能处理PHP,它只是个web服务器,当接收到请求后,如果是php请求,则发给php解释器处理,并把结果返回给客户端。

nginx一般是把请求发fastcgi管理进程处理,fascgi管理进程选择cgi子进程处理结果并返回被nginx

本文以php-fpm为例介绍如何使nginx支持PHP

一、编译安装php-fpm

什么是PHP-FPM

PHP-FPM是一个PHP FastCGI管理器,是只用于PHP的,可以在 http://php-fpm.org/download下载得到.

PHP-FPM其实是PHP源代码的一个补丁,旨在将FastCGI进程管理整合进PHP包中。必须将它patch到你的PHP源代码中,在编译安装PHP后才可以使用。


系统版本:centos7.0 x86_64

软件环境:已安装nginx


安装php-fpm依赖环境

yum -y install gcc gcc-c++ automake autoconf libtool make libmcrypt-devel mhash-devel mcrypt-devel libxslt-devel libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5-devel libidn libidn-devel openssl openssl-devel

!!!Yum可能无法安装libmcrypt-devel mhash-devel mcrypt-devel可以使用源代码方式安装

编译安装php

1

2

3

tar zvxf php-5.4.7.tar.gz

cd php-5.4.7

./configure --prefix=/usr/local/php  --enable-fpm


在nginx主配置文件中的http模块中插入下列内容

location ~ .php$ {

            root /var/www/html;

            fastcgi_pass 127.0.0.1:9000;

            fastcgi_index index.php;

            fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

            include fastcgi_params;

                }

 wKioL1esTT-SeSVZAABYzISSDXk575.png

vim /var/www/html/index.php

1

2

3

<?php

echo phpinfo();

?>


依次开启php-fpm模块和nginxd服务

开启命令:

/usr/local/php/sbin/php-fpm

关闭命令:

killall -9 php-fpm

 

客户端访问php页面

 

 

 


打开App,阅读手记
1人推荐
发表评论
随时随地看视频慕课网APP