php 5.6 nginx,php5.6 php-fpm nginx安装和配置

今天发现有个网站是基于php版本的,然后上网收集资料后安装一遍试试。

一、先安装php依赖包。

yum -y install gcc gcc-c++ autoconf 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 krb5-devel libidn libidn-devel openssl openssl-devel openldap openldap-devel nss_ldap openldap-clients openldap-servers gd gd2 gd-devel gd2-devel perl-CPAN pcre-devel

二、下载php5.6.36版本

http://php.net/get/php-5.6.36.tar.gz/from/a/mirror

php-fpm组件说明

LNMP环境中的nginx是不支持php的,需要通过fastcgi插件来处理有关php的请求。而php需要php-fpm这个组件提供该功能。在php5.3.3以前的版本php-fpm是以一个补丁包的形式存在的,而php5.3.3以后只需在编译安装时使用--enable-fpm加载该模块即可,无需另行安装。

三、安装php

先创建php需要安装的目录

cd /etc/

mkdir php

cd /usr/local/

mkdir php

tar -xzvf php-5.6.36.tar.gz

cd php-5.6.36

在下面的配置中,指定软件安装目录为/usr/local/php,配置文件安装目录为/etc/php

./configure --prefix=/usr/local/php --with-config-file-path=/etc/php --enable-fpm --enable-pcntl --enable-mysqlnd --enable-opcache --enable-sockets --enable-sysvmsg --enable-sysvsem  --enable-sysvshm --enable-shmop --enable-zip --enable-ftp --enable-soap --enable-xml --enable-mbstring --disable-rpath --disable-debug --disable-fileinfo --with-mysql=mysqlnd --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --with-pcre-regex --with-iconv --with-zlib --with-gd --with-openssl --with-mhash --with-xmlrpc --with-curl --with-imap-ssl

Thank you for using PHP.

config.status: creating php5.spec

config.status: creating main/build-defs.h

config.status: creating scripts/phpize

config.status: creating scripts/man1/phpize.1

config.status: creating scripts/php-config

config.status: creating scripts/man1/php-config.1

config.status: creating sapi/cli/php.1

config.status: creating sapi/fpm/php-fpm.conf

config.status: creating sapi/fpm/init.d.php-fpm

config.status: creating sapi/fpm/php-fpm.service

config.status: creating sapi/fpm/php-fpm.8

config.status: creating sapi/fpm/status.html

config.status: creating sapi/cgi/php-cgi.1

config.status: creating ext/phar/phar.1

config.status: creating ext/phar/phar.phar.1

config.status: creating main/php_config.h

config.status: executing default commands

[root@localhost php-5.6.36]# make

[root@localhost php-5.6.36]# make install

查看软件安装目录中的内容

[root@localhost php-5.6.30]# ls /usr/local/php

bin  etc  include  lib  php  sbin  var

拷贝配置文件模板到配置文件目录中

[root@localhost php-5.6.30]# cp php.ini-development /etc/php/php.ini

创建软连接

[root@localhost ~]# ln -s /usr/local/php/bin/php /usr/bin/php

[root@localhost ~]# ln -s /usr/local/php/bin/phpize /usr/bin/phpize

[root@localhost ~]# ln -s /usr/local/php/sbin/php-fpm /usr/bin/php-fpm

查看安装的版本

[root@localhost ~]# /usr/local/php/bin/php --version

[root@localhost ~]# cd /usr/local/php/etc/

[root@localhost ~]# cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf

[root@localhost ~]# ln -s /usr/local/php/etc/php-fpm.conf /etc/php/php-fpm.conf #添加软连接到 /etc/php目录

[root@localhost ~]# vim /usr/local/php/etc/php-fpm.conf

pid = run/php-fpm.pid #取消前面的分号

[root@localhost ~]# cp 源码目录/php-5.6.36/sapi/fpm/init.d.php-fpm /etc/rc.d/init.d/php-fpm #拷贝php-fpm到启动目录

[root@localhost ~]# chmod +x /etc/rc.d/init.d/php-fpm #添加执行权限

[root@localhost ~]# chkconfig php-fpm on #设置开机启动

查看端口是否占用

[root@localhost ~]# netstat -tunlp |grep 9000

启动服务

[root@localhost ~]# cd /etc/rc.d/init.d/

[root@localhost ~]# ./php-fpm start

[root@localhost ~]# netstat -tunlp |grep 9000

[root@localhost ~]# ps -ef|grep fpm

四、nginx配置解析php

1、进入nginx目录

[root@localhost ~]# cd /usr/local/nginx/conf

2、编辑配置文件

[root@localhost ~]# vim nginx.conf

在 server 下找到

location / {

root html;

index index.html index.htm index.php;    #加上index.php,让nginx服务器默认支持index.php为首页

}

往下面配置.php请求被传送到后端的php-fpm模块,默认情况下php配置块是被注释的,此时去掉注释并修改为以下内容:

location ~ \.php$ {

root /usr/local/nginx/html;   #修改html路径

fastcgi_pass 127.0.0.1:9000;

fastcgi_index index.php;

fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;   #这里原来是/scripts,需要改成$document_root

include fastcgi_params;

}

保存后重新加载nginx

[root@localhost ~]# /usr/local/nginx/nginx -s t

[root@localhost ~]# /usr/local/nginx/nginx -s reload

http://192.168.1.11/index.php

五、相关查询

1.通过命令查看服务器上一共开了多少的 php-cgi 进程

ps -fe |grep "php-fpm"|grep "pool"|wc -l

2.查看已经有多少个php-cgi进程用来处理tcp请求

netstat -anp|grep "php-fpm"|grep "tcp"|grep "pool"|wc -l

3.linux+nginx+php环境中,每个php-fpm进程的内存限制

设置方法:

编辑php-fpm.conf配置文件

php_admin_value[memory_limit] = 128M(我服务器上的配置文件在/etc/php5/fpm/pool.d/www.conf 这个文件是被包含在php-fpm.conf里的) 后边的数字可以随便更改:32M,64M,128M,256M,512M,这个设置可根据你的服务器内存大小和你的需求来写,修改后要加载一下php-fpm服务

参考:

https://www..com/scofi/articles/5135459.html

https://blog..net/lyt_3024912/article/details/52511643

https://www..com/starlion/p/8884465.html

https://www..com/freeweb/p/5425554.html

https://blog..net/field_yang/article/details/52415062

转自【https://blog..net/cuker919/article/details/80985714】

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值