centos-php安装

初学者自编文档,如有错误,请指出,具体命令就不阐述了,不明白 度娘吧!

nginx我是编译安装在服务器上 和其他安装应该会有区别

  • 安装路径路径:/usr/local/
  • 安装包存放位置:/home/apps/web/
前期依赖包安装链接 http://www.cnblogs.com/nikolatesfei/p/5422678.html

1. 安装PHP

     cd  home/apps/web && mkdir php && cd php 进入安装包存放文件夹并创建php文件夹 并进入php安装文件夹

      A.下载  wget http://museum.php.net/php7/php-7.2.9.tar.gz

     B.解压  tar xzf php-7.2.9.tar.gz

     C.安装  ./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc/ --with-mcrypt --with-zlib --with-curl --disable-debug --enable-fpm --enable-mbstring --enable-sockets --enable-zip --enable-xml --enable-pdo

            安装注解: --width-xx 为需要编译安装的内容,请根据合适的方案来,我后面因为需要php支持jpeg的支持需要重新编译GD库导致无法安装,只能重新安装php,在此申明,未加上GD库

---------------------------------------------------------------------------------

    我在这里安装出现了错误:

    configure: error:mcrypt.h not found. Please reinstall libmcrypt.

          百度资料,百度后 现整理如下 

          需安装libmcrypt 

          http://sourceforge.net/projects/mcrypt/files/Libmcrypt/2.5.8/

          A. wget https://sourceforge.net/projects/mcrypt/files/Libmcrypt/2.5.8/libmcrypt-2.5.8.tar.gz

          B. tar zxvf libmcrypt-2.5.8.tar.gz

          C. cd libmcrypt-2.5.8

          D.  ./configure --prefix=/usr/local

          E. make

          F. make instally

安装完毕,请重新执行上一部操作

-----------------------------------------------------------------------------------

         D. make 

         E. make install

2.启动

    /usr/local/php/sbin/php-fpm -y=/usr/local/php/etc/php-fpm.conf -c=/usr/local/php/etc/php.ini

-------------------------------------------------------------------------------------------------------------

       这里出现了错误:

        [21-Apr-2016 16:08:27] ERROR: failed to open configuration file '/usr/local/php/etc/php-fpm.conf': No such file or directory (2)

    [21-Apr-2016 16:08:27] ERROR: failed to load configuration file '/usr/local/php/etc/php-fpm.conf'
    [21-Apr-2016 16:08:27] ERROR: FPM initialization failed

     自查应该是缺少conf文件

     1 .cd /usr/local/php/etc

     2 .cp php-fpm.conf.default php-fpm.conf 复制一个文件 复制的文件名为php-fpm.conf

 -------------------------------------------------------------------------------------------------------------------------------

 ----------------------------------

2.重启

/usr/local/php/sbin/php-fpm -y=/usr/local/php/etc/php-fpm.conf -c=/usr/local/php/etc/php.ini -t 
killall php
/usr/local/php/sbin/php-fpm -y=/usr/local/php/etc/php-fpm.conf -c=/usr/local/php/etc/php.ini
----------------------------------------------------------------------------
这里重启一个错误:

ERROR: unable to bind listening socket for address ’127.0.0.1:9000′
解决方案:
netstat -lntup | grep 9000
killall php-fpm

-----------------------------------------------------------------------------------

3.配置

 1.phpinfo() 中 Loaded Configuration File 值为none

   直接把源码包中的php.ini-production拷贝到--with-config-file-path设置的路径,例:/usr/local/php/etc/php.ini

   --with-config-file-path 为安装代码中的值 在安装代码中已经加上

       cp php.ini-production /usr/local/php/etc/php.ini

  2.日志文件

php.ini

error_log = /usr/local/php/log/error_log
error_reporting = E_ALL
改成 error_reporting = E_ALL | E_STRICT

log_errors = On

display_errors = off

extension_dir="/usr/local/php/lib/php/extensions/"

php-fpm.conf

catch_workers_output = yes
error_log = /usr/local/php/log/error_log

 www.conf

# 只有www.conf.default,那么复制一个www.conf

cd /usr/local/php/etc/php-fpm.d

cp www.conf.default www.conf

vi /usr/local/php/etc/php-fpm.d/www.conf

将 user = nobody group=nobody改成你系统运行的角色,如果你是root运行,忽略本次操作

3.环境变量

1.vi etc/profile

2.在最后追加

 PATH=$PATH:/usr/local/php/bin:$PATH

  export PATH

'user' directive is ignored when FPM is not running as root
用的非root用户运行的,sudo 运行命令即可
原文地址:https://www.cnblogs.com/nikolatesfei/p/5418905.html