在CentOS7.0下安装PHP5.6.30服务的详细教程
关于php-fpm
Nginx本身无法处理php,它只是一个web服务器。收到请求后,如果是php请求,会发送到PHP解释器进行处理,结果会返回给客户端。
一般nginx将请求发送给fastcgi管理流程进行处理,fastcgi管理流程选择cgi子流程对结果进行处理,并返回给nginx。
PHP-FPM是一个PHP FastCGI管理器,只用于PHP。
5.3.3之后,php已经说把php-fpm写进了php源代码的核心。所以不需要单独下载。
获取PHP下载地址
为什么选择5.6.30版本,因为学习,而不是研究。诚然,7.0增加了很多PHP的新特性,性能也有所提升。如果是研究,可以抛。我们将在后面讨论7.0版本以及如何在PHP版本之间切换。
打开php的官方网站:http://php.net/,查看php版本列表
右键,复制链接地址,登录远程主机,下载软件(我选择了澳大利亚的主机镜像下载)
# wget http://au1.php.net/get/php-5.6.30.tar.gz/from/this/mirror下载了一个镜像文件,并将其更改为我们需要的文件名
# mvmirror PHP-5.6.30.tar.gz # tar zxvf PHP-5.6.30.tar.gz # cdphp-5 . 6 . 30配置和安装
要进入目录,我们需要在安装时将安装目录配置为/usr/local/php/
#./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-MySQL-with-OpenSSL-with-pcre-regex-with-PDO-MySQL-with-PDO-SQLite-with-pear-png-dir-with-xmlrpc-with-xs
错误1:
找不到Xml2-config。请检查您的libxml2安装。解决办法
安装libxml2相关组件
# yum installlibxml 2 # yum installlibxml 2-dev-y错误2:
请重新安装libcurl发行版-easy.h应该在curl-dir/include/curl/install curl相关组件中
#yum安装卷曲卷曲-发展错误3:
配置:错误: png。没有找到。安装libpng相关组件
# yum install libpng # yum install libpng-dev错误4:
找不到Freetype-config。安装freetype相关组件
# yum install freetype-develop错误5:
找不到Xslt-config。请重新安装libxslt=1 . 1 . 0发行版安装libxslt相关组件
#yum install libxslt-devel ok好了,当我们看到下面这句话的时候,就说明你的php已经配置好了!
接下来,我们只需要编译和安装php
#make make install看到这句话,说明安装完成了!
为了保险起见,让我们做个测试,看看它是否真的成功。
配置相关的php.ini配置
首先,我们需要配置文件php.ini
安装目录中有两个文件:PHP . ini-开发和PHP . ini-生产
PHP . ini-使用生产在线版本
由PHP . ini-开发开发版本使用
我们选择开发进行配置
# cpphp . ini-development/usr/local/PHP/lib/PHP . ini PHP-fpm配置
复制php-fpm配置文件
# 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查看php是否成功启动
# PS aux | grep PHP
看到这些说明你的php已经成功启动了!
重启和关闭
#kill -9流程编号。#/etc/init.d/php-fpm将Nginx配置为支持php
输入nginx主目录,/usr/local/nginx;
#cd /usr/local/nginx进入配置目录
#cd confNginx支持PHP,需要修改nginx.conf
# vimninx.conf在服务器代码部分替换了以下代码,使Nginx支持PHP。
修改后,这段代码变成,红色部分显示我们的主机目录是/usr/www,所以需要修改fastcgi_param SCRIPT_FILENAME指向对应的目录:
将主目录设置为/usr/www。
注释掉根行并添加一个新行:root/usr/www;
保存并退出。
根据Nginx章节的解释,我们重启Nginx服务。
#/etc/init.d/Nginx重启如果没有按照我们在Nginx中的方法进行配置,可以按照如下方式重启Nginx服务。
#/usr/local/nginx/sbin/nginx-s重装成功重启!接下来,我们在/usr/www目录中添加一个新文件。
#vim /usr/www/phpinfo.php插入以下内容
?PHP phpinfo();在浏览器中打开http://远程ip/phpinfo.php
看到这个页面,恭喜你,你的PHP已经安装配置好了。你可以在这个页面上看到php依赖的所有组件。我将在下一节向您详细解释这一页。如果你对这部分有什么问题,欢迎在评论区和我交流讨论。如果您有任何意见,一定会回复。^_^
笔记
设置启动php和启动php服务的便捷方式
在上面的方法中,我在复制php-fpm的服务时犯了一个问题。我应该把php交给我们准备好的init.d.php-fpm,而不是直接把php-fpm的可执行文件复制到目录/etc/init.d/
# cp。/SAPI/fpm/init . d . php-fpm/etc/init . d/PHP-fpm将PHP-fpm服务添加到chkconfig列表中
# chkconfig-addphp-fpm设置从引导启动
#chkconfig php-fpm未来重启和停止php的方式是
# service PHP-fpm start # service PHP-fpmstop # service PHP-fpmrestart # service PHP-fpm load以上是我的问题,请及时改正。
版权声明:在CentOS7.0下安装PHP5.6.30服务的详细教程是由宝哥软件园云端程序自动收集整理而来。如果本文侵犯了你的权益,请联系本站底部QQ或者邮箱删除。