centos 6.4 安装php 5.6.26 源码安装

本文详细介绍了如何在Linux环境下从头开始安装PHP5.6版本,包括准备环境、安装过程、编译配置、验证及配置参数说明等关键步骤。

很少在linux中操作,所以很多命令及软件安装方式很是不了解,导致使用过程中出现问题不知所措,正好目前项目要在linux环境中运行,特此记录下安装过程,供后期参考。

一、准备环境

1、下载安装文件 php-5.6.26.tar.gz 下载地址

2、准备安装环境:

     

  yum install -y libxml2 libxml2-devel openssl-devel libcurl-devel libjpeg-devel libpng-devel libicu-devel openldap-devel
  yum install gcc gcc-c++ #编译工具  

二、安装

1、解压:将php-5.6.26.tar.gz解压到某一目录下,如/opt/web/soft中,执行命令:

tar -zxvf php-5.6.26.tar.gz

2、自定义配置:

进入刚才解压开的文件中,

cd/opt/web/soft/php-5.6.26

创建 www 用户
groupadd www
useradd -g www -s /sbin/nologin -M www

./configure --prefix=/usr/local/php5626 --with-config-file-path=/usr/local/php5626/etc --enable-fpm --with-fpm-user=php-fpm --with-fpm-group=www --enable-mysqlnd --with-mysql=mysqlnd --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --enable-opcache --enable-mbstring --enable-soap --enable-zip --enable-bcmath --with-openssl --with-zlib --with-curl --with-gd --with-zlib-dir=/usr/lib --with-png-dir=/usr/lib --with-jpeg-dir=/usr/lib --with-mhash
注意:此命令是一行命令,因为粘贴此处被动换行了,执行时需去掉多余空格

如果配置成功,会有如上图所示提示(此图盗用)

三、编译、安装

1、make

2、make install

注意:如果执行make报如下错误

collect2: ld returned 1 exit status
make: *** [sapi/cli/php] Error 1

解决方案:

执行此命令:make ZEND_EXTRA_LIBS='-liconv'

然后重新执行make

四、验证

执行命令 php -v

如果出现php版本及相关信息,则证明安装成功。

ps:如果执行php命令出现错误,提示  php:command not found,大部分是因为路径不对,请尝试如下操作:

  进入/etc/profile中,更改环境变量,命令如下:

vi /etc/profile  进入文件,在最后加入export PATH=$PATH:/usr/local/php5626/bin

保存退出,esc键,移动到最后:wq

使文件生效:

source /etc/profile

执行echo $PATH 如果输出中包含php路径,及已生效

如果还不好使,则执行如下命令,进行软连接配置

ln -s /usr/local/php/bin/php /usr/bin/php

应该就好使了,祝好运.....

五、配置

安装后,要进行配置,方可正常使用。

1、将源码文件中的/php 5.6.26/php.ini-production 拷贝到 /usr/local/lib/中,并改名,命令如下:

mv /opt/soft/php 5.6.26/php.ini-production  /usr/local/lib/php.ini

2、至此,还没结束,继续配置php-fpm,此功能已在2.2中配置了,声明--enable-fpm 即可开启,但是要做配置,系统已经生成默认配置文件,只需复制,重命名即可。

在 /usr/local/php5626/etc 中的php-fpm.conf.default 拷贝一份,重命名为 php-fpm.conf即可。命令如下:

cp /usr/local/php5626/etc/php-fpm.conf.default  /usr/local/php5626/etc/php-fpm.conf

为了让php-fpm已服务的形式启动。我们需要复制php安装目录下/sapi/fpm/init.d.php-fpm文件。如下:

cp ./sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm

以很清楚的看到php-fpm文件目前没有执行权限。赋予php-fpm执行权限,并启动php-fpm,如下:

chmod a+x /etc/init.d/php-fpm

/etc/init.d/php-fpm start

netstat -tunlp |grep 9000

可以看到系统以正常启动。

php-fpm 可用参数 start|stop|force-quit|restart|reload|status

六、配置参数说明

""" 安装路径"""
--prefix=/usr/local/php56 
  
""" php.ini 配置文件路径"""
--with-config-file-path=/usr/local/php56/etc
  
""" 优化选项"""
--enable-inline-optimization 
--disable-debug 
--disable-rpath 
--enable-shared 
  
""" 启用 opcache,默认为ZendOptimizer+(ZendOpcache) """
--enable-opcache 
  
""" FPM """
--enable-fpm 开启php的fastcgi功能,即开启php-fpm功能
--with-fpm-user=www 
--with-fpm-group=www 
  
""" MySQL """
--with-mysql=mysqlnd 
--with-mysqli=mysqlnd 
--with-pdo-mysql=mysqlnd 
  
""" 国际化与字符编码支持"""
--with-gettext 
--enable-mbstring  mbstring模块的主要作用在于检测和转换编码,提供对应的多字节操作的字符串函数。
--with-iconv 
""" 加密扩展"""
--with-mcrypt 
--with-mhash 
--with-openssl 
""" 数学扩展"""
--enable-bcmath 
""" Web 服务,soap 依赖 libxml"""
--enable-soap \
--with-libxml-dir \
""" 进程,信号及内存"""
--enable-pcntl \
--enable-shmop \
--enable-sysvmsg \
--enable-sysvsem \
--enable-sysvshm \
""" socket & curl"""
--enable-sockets \
--with-curl \
""" 压缩与归档"""
--with-zlib \
--enable-zip \
--with-bz2 \
""" GNU Readline 命令行快捷键绑定"""
--with-readline








tar zxvf php-5.6.37.tar.gz cd php-5.6.37 #添加组 groupadd www #添加php-fpm用户 useradd -c php-fpm-user -g www -M www # c和c++编译器 yum -y install -y gcc gcc-c++ # PHP扩展依赖 yum install -y libxml2-devel openssl-devel libcurl-devel libjpeg-devel libpng-devel libicu-devel openldap-devel ./configure --prefix=/usr/local/php \ --with-config-file-path=/usr/local/php/etc \ --enable-fpm\ --with-fpm-user=www\ --with-fpm-group=www\ --enable-mysqlnd\ --with-mysql=mysqlnd\ --with-mysqli=mysqlnd\ --with-pdo-mysql=mysqlnd\ --enable-opcache\ --enable-pcntl\ --enable-mbstring\ --enable-soap\ --enable-zip\ --enable-calendar\ --enable-bcmath\ --enable-exif\ --enable-ftp\ --enable-intl\ --with-openssl\ --with-zlib\ --with-curl\ --with-gd\ --with-zlib-dir=/usr/lib\ --with-png-dir=/usr/lib\ --with-jpeg-dir=/usr/lib\ --with-gettext\ --with-mhash\ --with-ldap make && make install cp php.ini-production /usr/local/php/etc/php.ini cp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm # 设置php-fpm开机自动启动 chmod +x /etc/init.d/php-fpm chkconfig php-fpm on cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf service php-fpm start 设置php为全局命令: 修改/etc/profile文件使其永久性生效,并对所有系统用户生效, 在文件末尾加上如下两行代码: PATH=$PATH:/usr/local/php/bin //php命令路径 如果还要同时加入mysql 则第一句: PATH=$PATH:/usr/local/php/bin:/usr/local/mysql/bin //路径一定要正确 执行 命令source /etc/profile 使用php -V确认 【查看php-fpm端口】 vim /usr/local/php/etc/php-fpm.conf listen = 127.0.0.1:9000
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值