CentOS7.0下安装PHP5.6.30服务的教程详解
linux  /  管理员 发布于 4年前   355
关于php-fpm nginx本身不能处理PHP,它只是个web服务器,当接收到请求后,如果是php请求,则发给php解释器处理,并把结果返回给客户端。 nginx一般是把请求发fastcgi管理进程处理,fascgi管理进程选择cgi子进程处理结果并返回被nginx。 PHP-FPM是一个PHP FastCGI管理器,是只用于PHP的。 PHP在 5.3.3 之后已经讲php-fpm写入php源码核心了。所以已经不需要另外下载了。 获取PHP下载地址 为什么选择5.6.30这个版本,因为学习,不是研究。诚然,7.0新增了很多PHP的新特性,性能上面也有些提升,如果是研究,倒是可以折腾一番,后面得空再讲7.0的版本以及如何在各个PHP版本之间切换。 打开php的官网:http://php.net/ ,查看php的版本列表 右击,复制链接地址,在远程主机登录,下载该软件(我选的是Australia的主机mirror下载的) 下载下来的是一个mirror文件,改成我们需要的文件名 配置安装 进入到目录,我们需要在安装的时候将安装目录配置到/usr/local/php/里 配置的过程中可能会报如下错误 错误1: 解决办法 安装libxml2相关组件 错误2: 安装curl相关组件 错误3: 安装libpng相关组件 错误4: 安装freetype相关组件 错误5: 安装libxslt相关组件 好的,当我们看到下面这句话的时候,说明你的php已经配置完成啦! 接下来我们只需要编译安装即可完成php的安装 看到这句话,表明安装完成! 为了保险起见,我们make test一把,看看是否真的成功了。 配置相关php.ini配置 首先我们需要配置的是php.ini这个文件 安装目录有2个文件: php.ini-production 线上版本使用 php.ini-development 开发版本使用 我们选择development进行配置 php-fpm配置 拷贝php-fpm配置文件 拷贝启用文件 启动 查看php是否启动成功 看到这些,表明你的php已经启动成功啦! 重启及关闭 配置Nginx支持PHP 进入nginx主目录,/usr/local/nginx; 进入配置目录 Nginx支持PHP需要修改nginx.conf 代开下面代码,让Nginx支持PHP,在server代码段里。 修改完,这段代码变为,红色部分为我们主机目录为/usr/www,需要修改fastcgi_param SCRIPT_FILENAME指向对应目录即可: 设置主目录设置为/usr/www。 注释掉root那行,新增一行:root /usr/www; 保存退出。 根据Nginx章的解释,我们重启Nginx服务。 如果你没有按照我们在Nginx的方法配置,可以按照以下的方式重启Nginx服务 重启成功!下面我们在/usr/www目录下添加一个新文件。 插入以下内容 在浏览器中打开http://远程ip/phpinfo.php 看到这个页面,恭喜你,你的PHP已经安装配置完成。你可以在这个页面看到所有php依赖的组件,下一节我将和大家详细讲解一下这个页面,如果对本节有什么疑问的,欢迎在评论区和我交流讨论,有留言必回。^_^ 注 设置php开机自启动与开启php服务便捷方式 上面的方法中,我在拷贝php-fpm的服务时出了问题,不应该直接将php-fpm的可执行文件拷贝到/etc/init.d/目录下去,应该将php给我们准备好的init.d.php-fpm。 将php-fpm服务添加到chkconfig列表 设置开机自启动 以后重启和停止php的方式为 上面是我的问题,请大家及时更正。# wget http://au1.php.net/get/php-5.6.30.tar.gz/from/this/mirror
#mv mirror php-5.6.30.tar.gz#tar zxvf php-5.6.30.tar.gz#cd php-5.6.30
#./configure --prefix=/usr/local/php --with-curl --with-freetype-dir --with-gd --with-gettext --with-iconv-dir --with-kerberos --with-libdir=lib64 --with-libxml-dir --with-MySQL --with-mysqli --with-openssl --with-pcre-regex --with-pdo-mysql --with-pdo-sqlite --with-pear --with-png-dir --with-xmlrpc --with-xsl --with-zlib --enable-fpm --enable-bcmath --enable-libxml --enable-inline-optimization --enable-gd-native-ttf --enable-mbregex --enable-mbstring --enable-opcache --enable-pcntl --enable-shmop --enable-soap --enable-sockets --enable-sysvsem --enable-xml --enable-zip
xml2-config not found. Please check your libxml2 installation.
#yum install libxml2#yum install libxml2-devel -y
Please reinstall the libcurl distribution - easy.h should be in
#yum install curl curl-devel
configure: error: png.h not found.
#yum install libpng#yum install libpng-devel
freetype-config not found.
#yum install freetype-devel
xslt-config not found. Please reinstall the libxslt >= 1.1.0 distribution
#yum install libxslt-devel
#make && make install
php.ini-development和php.ini-production
# cp php.ini-development /usr/local/php/lib/php.ini
#cp -R ./sapi/fpm/php-fpm.conf /usr/local/php/etc/php-fpm.conf
#cp -R ./sapi/fpm/php-fpm /etc/init.d/php-fpm(已弃用,详细的见注1)
#/etc/init.d/php-fpm
#ps aux | grep php
#kill -9 进程号#/etc/init.d/php-fpm
#cd /usr/local/nginx
#cd conf
#vim nginx.conf
#/etc/init.d/nginx restart
# /usr/local/nginx/sbin/nginx -s reload
#vim /usr/www/phpinfo.php
#cp ./sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
#chkconfig --add php-fpm
#chkconfig php-fpm on
#service php-fpm start#service php-fpm stop#service php-fpm restart#service php-fpm reload
您可能感兴趣的文章:
122 在
学历:一种延缓就业设计,生活需求下的权衡之选中评论 工作几年后,报名考研了,到现在还没认真学习备考,迷茫中。作为一名北漂互联网打工人..123 在
Clash for Windows作者删库跑路了,github已404中评论 按理说只要你在国内,所有的流量进出都在监控范围内,不管你怎么隐藏也没用,想搞你分..原梓番博客 在
在Laravel框架中使用模型Model分表最简单的方法中评论 好久好久都没看友情链接申请了,今天刚看,已经添加。..博主 在
佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 @1111老铁这个不行了,可以看看近期评论的其他文章..1111 在
佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 网站不能打开,博主百忙中能否发个APP下载链接,佛跳墙或极光..
Copyright·© 2019 侯体宗版权所有·
粤ICP备20027696号