我们可以在此目录下建立一个php测试脚本
处事器上已经有nginx和mysql,所以就决定给与 PHP+Nginx+mysql这个组合,在网上翻了很多资料,由于对linux和PHP不不了解,不知道PHP和nginx和mysql是怎么关联的,遇到各类原因(不是php装错了,就是包没装,),花了很多时间,后来部署完后发明,这三个都是单独安置(额~~难道还能一起安置),只需要php安置后配置下,nginx的配置下(和php的关联)就直接可以跑了。至于mysql,只要开启,php项目里面的连接数据库配置好了,可以直接连上去。所以本文主要针对php的安置。
关于nginx和mysql的安置,开始安置前需要在linux的一些开发库安置在此也不复述,参考链接里面都有。
本文主要参考了此链接博客:https://www.cnblogs.com/flower-tree/p/7562101.html
php版本:5.6.31
nginx版本:1.7.3
mysql版本:5.6.62
PHP安置配置nginx自己不能措置惩罚惩罚PHP,它只是个WEB处事器,当接收到请求后,如果是php请求,则发送给php解释器措置惩罚惩罚,并把功效返回给客户端。
nginx一般把请求发送给fastcgi打点进程措置惩罚惩罚,fastcgi打点进程选择cgi子进程措置惩罚惩罚功效并返回nginx。
什么是PHP-FPM?PHP-FPM是一个属于PHP的FASTCGI打点器,只用于PHP,新版本已集成php-fpm了,php-fpm供给更好的php进程打点,可以有效控制内存和进程,可以平滑重载php配置。在configure时,带-enable-fpm参数即可开启php-fpm,其他参数可见这里,至于什么是fastcgi,和php-fpm什么关系,可参考链接https://segmentfault.com/q/1010000000256516
安置前筹备
添加 epel 源rpm -Uvh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
安置依赖yum install gcc bison bison-devel zlib-devel libmcrypt-devel mcrypt mhash-devel openssl-devel libxml2-devel libcurl-devel bzip2-devel readline-devel libedit-devel sqlite-devel yum -y install gcc gcc-c++ glibc yum -y install libmcrypt-devel mhash-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 krb5-devel libidn libidn-devel openssl openssl-devel
下载php-5.6.31
1)将安置包解压到 /usr/local/src
cd /usr/local/src tar -zvxf php-5.6.31.tar.gz
2)进入安置目录,进行安置
cd php-5.6.31 ./configure --prefix=http://www.mamicode.com/usr/local/php --enable-fpm --with-mcrypt --enable-mbstring --enable-pdo --with-curl --disable-debug --disable-rpath --enable-inline-optimization --with-bz2 --with-zlib --enable-sockets --enable-sysvsem --enable-sysvshm --enable-pcntl --enable-mbregex --with-mhash --enable-zip --with-pcre-regex --with-mysql --with-mysqli --with-gd --with-jpeg-dir --with-freetype-dir --enable-calendar make && make install
CentOS 中下载php: wget以上就完成了php-fpm的安置,安置过程会花一些时间。
关于php配置1、为php供给配置文件
cp php.ini-production /usr/local/php/etc/php.ini
注意:php.ini-production 还是在适才/usr/local/src/php-5.6.31 目录下
2、为php-fpm供给配置文件
cd /usr/local/php cp etc/php-fpm.conf.default etc/php-fpm.conf vim etc/php-fpm.conf
改削php-fpm.conf
user = www
group = www
如果www用户不存在,那么先添加www用户(默认运行用户nobody)
groupadd www useradd -g www www
如果没有配置这一步,浏览器打开 php 文件会报错
“The page you are looking for is temporarily unavailable. Please try again later”
改削
pm.max_children = 150
pm.start_servers = 8
pm.min_spare_servers = 5
pm.max_spare_servers = 10
pid = /usr/local/php/var/run/php-fpm.pid
3、启动php-fpm
执行
/usr/local/php/sbin/php-fpm
使用如下命令来验正(如果此命令输出有中几个php-fpm进程就说明启动告成了):
ps aux | grep php-fpm
功效如下图:
3、nginx和php-fpm整合
编纂nginx配置文件
vim /usr/local/nginx/conf/nginx.conf
初始内容如下:
温馨提示: 本文由Jm博客推荐,转载请保留链接: https://www.jmwww.net/file/web/31672.html