PHP Linux安装

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/oscar999/article/details/88808931


可以有两种安装方式, yum安装和源码安装, 当然也可以使用RPM安装。 这里仅介绍前两种。

yum方式安装

1.查看是否有PHP的可安装的软件包

方式是通过yum search命令,以
PHP5.4和PHP7.0为例,可以使用下面的命令:

yum search php54
yum search php70

如果已经安装,这一步下面的部分可以略去。
如果没有安装,可以通过epel源和remi源加入软件源
epel源:

rpm -Uvh http://mirrors.rit.edu/fedora/epel//7/x86_64/e/epel-release-7-9.noarch.rpm

remi源:

rpm -Uvh http://rpms.remirepo.net/enterprise/remi-release-7.rpm

安装yum-config-manager:

yum -y install yum-utils

更新系统当前软件版本

yum -y update

2. 安装

PHP5.4 安装命令:

yum -y install php

PHP7.0 安装命令:

yum-config-manager --enable remi-php70
yum -y install php php-opcache

PHP7.1 安装命令:

yum-config-manager --enable remi-php71
yum -y install php php-opcache

3. 添加模块

模块可以根据需要添加, 比如:

yum -y install php-mysql php-gd php-ldap php-odbc php-pear php-xml php-xmlrpc php-mbstring php-soap curl 

以上包括了mysql、xml和mbstring等模块

源码编译安装

1.下载源码包

PHP官方下载地址是:https://www.php.net/downloads.php
下载的时候发现美国的镜像比国内的还快,linux下载可以使用:

wget http://cn2.php.net/distributions/php-7.2.16.tar.gz

2.解压

  tar -zxvf  php-7.2.16.tar.gz 

3. 安装依赖包

yum install -y libxml2 libxml2-devel openssl openssl-devel bzip2 bzip2-devel libcurl libcurl-devel libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel gmp gmp-devel libmcrypt libmcrypt-devel readline readline-devel libxslt libxslt-devel

可以根据需要安装。

4. 编译配置

切换到解压后的目录:

 cd php-7.2.16

执行下面的命名进行配置:

./configure \
--prefix=/usr/local/php \
--with-apxs2=/usr/local/apache2/bin/apxs \
--with-libxml-dir \
--with-mysqli=mysqlnd \
--with-pdo-mysql=mysqlnd \
--with-gd \
--enable-fpm \
--enable-mysqlnd \
--enable-embedded-mysqli

注意,如果机器已经安装了 Apache服务器,比如安装位置在/usr/local/apache, 则可以通过with-apxs2选项指定apache。这样的话,PHP 编译安装的时候就会自动产生libphp7.so的动态链接文件, 并将其放入apache的moudles目录并自动修改 apache的配置文件。
所以,如果是要安装Apache+PHP的话, 建议是先安装Apache。

如果不需要apache, 将上面的with-apxs2一行去掉即可。

5. 编译安装

make && make install

6. 环境变量配置

使用vi修改/etc/profile文件

vi  /etc/profile

加入以下一行:

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

让配置生效:

source /etc/profile

7. 验证安装

php -version

PHP7安装mysql扩展

PHP7已经弃用mysql扩展改为mysqli或者pdo_mysql。所以如果想兼容php5的mysql的相关数据库方法的话,就需要另行安装了。
一般不建议这样,但是想使用一些知名的CMS时,其是基于PHP5的, 会需要安装。
下载扩展源码包:
下载地址: http://git.php.net/?p=pecl/database/mysql.git;a=summary
下载后解压:

tar xzvf mysql-230a828.tar.gz 
cd mysql-230a828/

使用phpize初始化和mysql扩展 ,这里php的安装目录是/user/local/php

/user/local/php/bin/phpsize
./configure --with-php-config=/user/local/php/bin/php-config --with-mysql=mysqlnd 

编译安装:

make && make install

直接编辑php.ini文件,把mysql.so拷贝到php.ini的extension_dir中,然后在php.ini中加入extension=mysql.so

重启php-fpm
service php7.1-fpm restart

编译配置参数

编译的配置参数比较多,下面列出多的和少的供参考

./configure \
--prefix=/usr/local/php \
--with-config-file-path=/usr/local/php/etc \
--enable-fpm \
--with-fpm-user=nginx \
--with-fpm-group=nginx \
--enable-inline-optimization \
--disable-debug \
--disable-rpath \
--enable-shared \
--enable-soap \
--with-libxml-dir \
--with-xmlrpc \
--with-openssl \
--with-mcrypt \
--with-mhash \
--with-pcre-regex \
--with-sqlite3 \
--with-zlib \
--enable-bcmath \
--with-iconv \
--with-bz2 \
--enable-calendar \
--with-curl \
--with-cdb \
--enable-dom \
--enable-exif \
--enable-fileinfo \
--enable-filter \
--with-pcre-dir \
--enable-ftp \
--with-gd \
--with-openssl-dir \
--with-jpeg-dir \
--with-png-dir \
--with-zlib-dir \
--with-freetype-dir \
--enable-gd-native-ttf \
--enable-gd-jis-conv \
--with-gettext \
--with-gmp \
--with-mhash \
--enable-json \
--enable-mbstring \
--enable-mbregex \
--enable-mbregex-backtrack \
--with-libmbfl \
--with-onig \
--enable-pdo \
--with-mysqli=mysqlnd \
--with-pdo-mysql=mysqlnd \
--with-zlib-dir \
--with-pdo-sqlite \
--with-readline \
--enable-session \
--enable-shmop \
--enable-simplexml \
--enable-sockets \
--enable-sysvmsg \
--enable-sysvsem \
--enable-sysvshm \
--enable-wddx \
--with-libxml-dir \
--with-xsl \
--enable-zip \
--enable-mysqlnd-compression-support \
--with-pear \
--enable-opcache
./configure --prefix=/usr/local/server/php \
--with-apxs2=/usr/local/apache/bin/apxs \
--with-config-file-path=/usr/local/server/php \
--with-pdo-mysql

相关介绍

1.EPEL

EPEL (Extra Packages for Enterprise Linux)是基于Fedora的一个项目,为“红帽系”的操作系统提供额外的软件包,适用于RHEL、CentOS和Scientific Linux。
首先需要安装一个叫”epel-release”的软件包,这个软件包会自动配置yum的软件仓库。

2.php-fpm

PHP-FPM(FastCGI Process Manager:FastCGI进程管理器)是一个PHPFastCGI管理器
PHP5.3.3已经集成php-fpm了,不再是第三方的包。
PHP-FPM提供了更好的PHP进程管理方式,可以有效控制内存和进程、可以平滑重载PHP配置
在./configure的时候带 –enable-fpm参数即可开启PHP-FPM

猜你喜欢

转载自blog.csdn.net/oscar999/article/details/88808931