编译安装 php

版权声明:欢迎任何形式的转载,但请务必注明出处,共创知识服务 https://blog.csdn.net/ASUKA2020/article/details/84428482
  1. 编译安装zlib
tar zxf zlib-1.2.8.tar.gz

cd zlib-1.2.8

./configure #zlib不要指定安装路径了

make && make install
  1. 编译安装libjpeg
tar zxf jpegsrc.v9a.tar.gz

cd jpeg-9a/

./configure --prefix=/opt/lamp/libjpeg --enable-shared --enable-static

make && make install
  1. 编译安装libpng
tar zxf libpng-1.6.7.tar.gz

cd libpng-1.6.7

./configure --prefix=/opt/lamp/libpng

make && make install

(从此开始出现make:nothing to be done for “…”)
  1. 编译安装freetype
tar zxf freetype-2.4.10.tar.gz

cd freetype-2.4.10

mkdir -p /opt/lamp/freetype/include/freetype2/freetype/internal

./configure --prefix=/opt/lamp/freetype

make && make install
  1. 编译安装libgd
yum install bzip2 -y

tar jxf libgd-2.1.0.tar.bz2

cd libgd-2.1.0

#configure 时不要指定prefix了,编译PHP时会出错

./configure --with-jpeg=/opt/lamp/libjpeg --with-png=/opt/lamp/libpng --with-freetype=/opt/lamp/freetype --with-zlib

make && make install
  1. 编译安装libcrympt
tar zxf libmcrypt-2.5.7.tar.gz

cd libmcrypt-2.5.7

./configure --prefix=/opt/lamp/libmcrypt

make && make install
  1. 编译安装libxml2
yum install python-devel -y

tar zxf libxml2-2.9.2.tar.gz

cd libxml2-2.9.2

./configure --prefix=/opt/lamp/libxml2

make && make install
  1. 编译安装php
tar zxf php-5.6.4.tar.gz

cd php-5.6.4

configure错误,出现Sorry, I cannot run apxs. ***

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

解决方案:

vi /opt/lamp/apache/bin/apxs

把第一行更改为#!/usr/bin/perl -w

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

(对于默认安装即./configure没有带prefix参数的可以直接只写出--with-XXX不用赋值 具体参数可通过./configure --help来查询)

php编译核心指令:
./configure \
     --prefix=/opt/lamp/php \
     --with-config-file-path=/opt/lamp/php/etc \
     --with-mysql=/opt/lamp/mysql \
     --with-mysqli=/opt/lamp/mysql/bin/mysql_config \
     --with-pdo-mysql=/opt/lamp/mysql/bin/mysql_config \
     --with-apxs2=/opt/lamp/apache/bin/apxs \
     --with-libxml-dir=/opt/lamp/libxml2 \
     --with-jpeg-dir=/opt/lamp/jpeg6 \
     --with-png-dir=/opt/lamp/libpng \
     --with-freetype-dir=/opt/lamp/freetype \
     --with-mcrypt=/opt/lamp/libmcrypt \
     --with-gd \
     --enable-shmop \
     --with-zlib \
     --enable-calendar \
     --enable-exif \
     --enable-mbstring \
     --enable-sockets \
     --enable-gd-native-ttf \

make && make install
  1. 建立php配置文件
将源码包目录下的“php.ini-development”文件复制到目录“/opt/lamp/php/etc/”中,并改名为“php.ini”。

cp php.ini-development /opt/lamp/php/etc/php.ini
  1. 添加环境变量
vi /etc/profile

在PATH=...后面加入

: /opt/lamp/php/bin

保存退出并运行

source /etc/profile

12添加php命令系统软链接调用

 ln -s /opt/lamp/php/bin/php /usr/bin/php
  1. 配置Apache httpd.conf
要改的有如下几处:

(1) # vi /opt/lamp/apache/conf/httpd.conf

查找AddType application/x-gzip .gz .tgz

在其下加入

AddType application/x-tar .tgz

AddType application/x-httpd-php .php

AddType image/x-icon .ico

(2)修改DirectoryIndex 行,添加index.php

修改为DirectoryIndex index.php index.html

(3)重启apache

systemctl restart httpd.service
  1. 修改php.ini
找到timezone,修改为date.timezone=Asia/Shanghai
  1. 测试
重启系统(不重启phpinfo不显示)

在Apache服务器根路径新建index.php文件如下

cd /opt/lamp/apache/htdocs/

vi index.php

<?php

phpinfo();

?>

猜你喜欢

转载自blog.csdn.net/ASUKA2020/article/details/84428482