PHP-7.2.17源码包部署
部署HTTPD-2.4.37源码包点击跳转
部署MySQL-5.6.31源码点击跳转
下载源码包和依赖的源码包,资源见文章顶部
把压缩包内的文件上传到服务器,这里用MobaXterm远程连接工具
php_8">安装php
php7217_9">1. 解压并进入php-7.2.17文件夹
tar xf php-7.2.17.tar.xz
cd ./php-7.2.17/
phpsh_16">2. 编写php.sh脚本
vim php.sh
编写内容
./configure \
--with-apxs2=/usr/local/apache2/bin/apxs \
--with-mysqli \
--with-pdo-mysql \
--with-zlib \
--with-curl \
--enable-zip \
--with-gd \
--with-freetype-dir \
--with-jpeg-dir \
--with-png-dir \
--enable-sockets \
--with-xmlrpc \
--enable-soap \
--enable-opcache \
--enable-mbstring \
--enable-mbregex \
--enable-pcntl \
--enable-shmop \
--enable-sysvmsg \
--enable-sysvsem \
--enable-sysvshm \
--enable-calendar \
--enable-bcmath
配置参数说明(默认什么功能都没有,必须通过模块的进行添加!)
–with-apxs2=/usr/local/apache2/bin/apxs
指定apxs路径,apxs是一个为Apache HTTP服务器编译和安装扩展模块的工具,php7中已被废弃
–with-mysql
–with-mysqli
–with-pdo-mysql
以上三个是php的扩展,用于连接mysql数据库的
–with-iconv-dir
–with-freetype-dir
–with-jpeg-dir
–with-png-dir
–with-gd
–with-zlib
–with-libxml-dir
这些都是在启用对某种文件的支持
–with-curl 和 --with-curlwrappers
用于支持 curl 函数,此函数允许你用不同的协议连接和沟通不同的服务器
–with-openssl,–with-mhash,–with-mcrypt
这都是和加密有关的参数,启用它们是为了让php可以更好的支持各种加密
–enable-bcmath高精度数学运算组件
–enable-shmop和 --enable-sysvsem
使得你的PHP系统可以处理相关的IPC函数.IPC是一个Unix标准通讯机制,它提供了使得在同一台主机不同进程之间可以互相通讯的方法
–enable-inline-optimization栈堆指针和优化线程
–enable-pcntl多线程优化
phpsh_71">3. 执行php.sh
给php.sh
文件添加x
执行权限
chmod +x php.sh
安装php依赖
yum install -y libxml2-devel libjpeg-devel libpng-devel freetype-devel
运行php.sh
文件
./php.sh
进行编译安装
make && make install
查看php版本号,看是否安装成功
php -v
配置Apache与PHP
1. 编写httpd.conf配置文件
vim /usr/local/apache2/conf/httpd.conf
- 开启apache对PHP的支持
开启166行的注释,在下面编写内容
166 LoadModule php7_module modules/libphp7.so #解开注释
167 AddHandler php7-script .php #编写的内容
168 AddType text/html .php #编写的内容
- 添加index.php默认首页
267 <IfModule dir_module>
268 DirectoryIndex index.php index.html
269 </IfModule>
php_112">2. 编写php测试脚本
cd /usr/local/apache2/htdocs # htdocs就是apache的默认项目目录
rm -f index.html
vim index.php
index.php
的内容
php"><?php
phpinfo();
?>
重启Apache软件
cd /usr/local/apache2
bin/apachectl -k restart
访问IP地址,看是否成功,看到下图表示成功