RHEL安装PHP
在RHEL7上安装PHP,当运行以下代码1
sudo yum install php-fpm
,会提示说,没有可用的软件包php-fpm。
什么是php-fpm?
简单来说,它就是一个流行的包。这个包提供更好的PHP进程管理器。从字面意思上来看,它就是管理PHP进程的。
如何安装php-fpm?
网上找了一圈发现,之所以报没有可用的软件包php-fpm,其实是我的yum repos缺了一个REMI库。而REMI库里就包含了php-form包。
所以我只需要安装REMI库就行了。
(1)通过yum来安装REMI库1
sudo yum install http://rpms.remirepo.net/enterprise/remi-release-7.rpm
,但是问题出在下载的时候进度卡住了,没有网速。
(2)通过wget下载rpm文件1
wget http://rpms.famillecollet.com/enterprise/remi-release-7.rpm
,虽然该方式下载remi-release-7.rpm文件也不快,但是我还是下载成功了。
(3)安装rpm文件1
sudo rpm -Uvh remi-release-7*.rpm
,结果报错headerRead函数执行失败,于是我又回到了步骤一,用yum来安装REMI库,估计是刚才使用wget下载好了rpm文件,这一次没有进度,直接读取和安装rpm文件,安装REMI库成功。
(4)安装php-fpm包
默认REMI是禁用的。要安装REMI仓库中的php-fpm包,使用以下命令
1 sudo yum --enablerepo=remi install php-fpm
,等待安装完成即可。
遇到的坑
在参照这篇How To Install Linux, Nginx, MySQL, PHP (LEMP) stack On CentOS 7帖子第三步“配置php处理器”以及第四步“使nginx处理php脚步”时,只要在我的配置文件里出现过/var/run/php-fpm/php-fpm.sock的地方,我的nginx服务器就无法打开php脚本。但是当我把它们还原成127.0.0.1:9000后,nginx服务器又能处理php脚本了。可能是帖子里php-fpm没有配置完全,漏了点东西。
而且我没有用到/etc/nginx/conf.d/default.conf,这个文件。而是在/etc/nginx/nginx.conf标准文件里,修改了server里的值。这样,不管是外网ip地址还是内网localhost,都可以运行php脚本了。