1. 官方
现在需要配置并编译 PHP。在这里可以用各种各样的参数来自定义 PHP,例如启动哪些扩展功能包的支持等。用 ./configure --help 命令可以列出当前可用的所有参数。在此例中,将给出一个在有 MySQL 支持的 Apache 2 上进行配置的范例。
如果按照上面的说明从源代码编译了 Apache,下面的例子会正确匹配 apxs 的路径。如果通过其他方式安装了 Apache,需要相应的调整 apxs 的路径。注意,在有些发行版本中,可能将 apxs 更名为 apxs2。
cd ../php-NN./configure --with-apxs2=/usr/local/apache2/bin/apxs --with-pdo-mysqlmakemake install
如果决定在安装后改变配置选项,只需重复最后的三步 configure,make,以及 make install,然后需要重新启动 Apache 使新模块生效。Apache 不需要重新编译。
请注意,除非明确有提示,否则“
make install
”
命令将安装 PEAR、各种 PHP 工具诸如 phpize,并安装 PHP CLI 等等。
2. 说明
apxs是一个为Apache HTTP服务器编译和安装扩展模块的工具,用于编译一个或多个源程序或目标代码文件为动态共享对象,使之可以用由mod_so提供的LoadModule指令在运行时加载到Apache服务器中。
查了官网资料和网上的资料,结合自己实战,整理了本篇文档,知识点非常丰富,可惜的是升级到php8.1.6之后,zabbix 6.0.4网页报错,问题在研究处理中。
3. 实际环境
tar -zxvf php-8.1.6.tar.gz
cd php-8.1.6
./configure --with-apxs2=/usr/bin/apxs --with-pdo-mysql
./configure --with-apxs2=/usr/bin/apxs \
--prefix=/usr/local/php8 \
--with-config-file-path=/usr/local/php8 \
--with-config-file-scan-dir=/usr/local/php8/php.d \
--enable-mysqlnd \
--with-mysqli=mysqlnd \
--with-pdo-mysql=mysqlnd \
--enable-fpm \
--with-fpm-user=apache \
--with-fpm-group=apache \
--with-gd \
--with-iconv \
--with-zlib \
--enable-xml \
--enable-shmop \
--enable-sysvsem \
--enable-inline-optimization \
--enable-mbregex \
--enable-mbstring \
--enable-ftp \
--with-openssl \
--enable-pcntl \
--enable-sockets \
--with-xmlrpc \
--with-zip \
--enable-soap \
--without-pear \
--with-gettext \
--enable-session \
--with-curl \
--with-jpeg=/usr/lib64 \
--with-freetype=/usr/lib64 \
--enable-opcache
如果按照上面编译安装,则会报警示,参数需要再核对:
configure: WARNING: unrecognized options: --with-gd, --enable-inline-optimization, --with-xmlrpc
3.1. 配置php
安装完成后,需要配置php.ini
cp /usr/local/src/php-8.1.6/php.ini-production /usr/local/php8/
查看版本:
[root@zabbix php8]# php -vPHP 8.1.6 (cli) (built: May 24 2022 13:47:06) (ZTS)Copyright (c) The PHP Group


3407

被折叠的 条评论
为什么被折叠?



