通过源码编译安装PHP必须配置的参数如下:
php8.1安装
第一步:安装依赖
yum install 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 zlib zlib-devel glibc glibc-devel glib2 glib2-devel ncurses curl gdbm-devel libXpm-devel libX11-devel gd-devel gmp-devel expat-devel xmlrpc-c libicu-devel libmcrypt-devel libsqlite3x-devel autoconf automake libtool glibc-headers gcc-c++
第二步:编译安装部分依赖
//安装bosion、sqliteyum install bosionyum install sqlite sqlite-develyum install https://dl.fedoraproject.org/pub/epel/7/x86_64/Packages/r/re2c-0.14.3-2.el7.x86_64.rpm//安装onigurumawget https://github.com/kkos/oniguruma/archive/v6.9.4.tar.gz -O oniguruma-6.9.4.tar.gztar xf oniguruma-6.9.4.tar.gzcd oniguruma-6.9.4/./autogen.sh && ./configure --prefix=/usrmake && make install
第三步:安装PHP
./configure --with-config-file-path=/usr/local/php --with-curl --with-openssl --with-mysqli --with-pdo-mysql --enable-mbstring --with-mhash --enable-fpm --enable-xml
--with-config-file-path=/usr/local/php //指定php配置文件路径--with-curl--with-openssl--with-iconv=/usr/local/libiconv--with-mysqli--with-pdo-mysql--with-mhash--enable-fpm--enable-xml--enable-swoole
其他常见参数
--prefix=/usr/local/php //指定 php 安装目录--with-apxs2=/usr/local/apache/bin/apxs //整合apache,//apxs功能是使用mod_so中的LoadModule指令,//加载指定模块到 apache,要求 apache 要打开SO模块--with-config-file-path=/usr/local/php/etc //指定php.ini位置--with-MySQL=/usr/local/mysql //mysql安装目录,对mysql的支持--with-mysqli=/usr/local/mysql/bin/mysql_config//mysqli扩展技术不仅可以调用MySQL的存储过程、处理MySQL事务,//而且还可以使访问数据库工作变得更加稳定。--enable-safe-mode //打开安全模式--enable-ftp //打开ftp的支持--enable-zip //打开对zip的支持--with-bz2 //打开对bz2文件的支持--with-jpeg-dir //打开对jpeg图片的支持--with-png-dir //打开对png图片的支持--with-freetype-dir //打开对freetype字体库的支持--without-iconv //关闭iconv函数,各种字符集间的转换--with-libXML-dir //打开libxml2库的支持--with-XMLrpc //打开xml-rpc的c语言--with-zlib-dir //打开zlib库的支持--with-gd //打开gd库的支持--enable-gd-native-ttf //支持TrueType字符串函数库--with-curl //打开curl浏览工具的支持--with-curlwrappers //运用curl工具打开url流--with-ttf //打开freetype1.*的支持,可以不加了--with-xsl //打开XSLT 文件支持,扩展了libXML2库 ,需要libxslt软件--with-gettext //打开gnu 的gettext 支持,编码库用到--with-pear //打开pear命令的支持,PHP扩展用的--enable-calendar //打开日历扩展功能--enable-mbstring //多字节,字符串的支持--enable-bcmath //打开图片大小调整,用到zabbix监控的时候用到了这个模块--enable-sockets //打开 sockets 支持--enable-exif //图片的元数据支持--enable-magic-quotes //魔术引用的支持--disable-rpath //关闭额外的运行库文件--disable-debug //关闭调试模式--with-mime-magic=/usr/share/file/magic.mime //魔术头文件位置
CGI方式安装需要的参数
--enable-fpm //打上PHP-fpm 补丁后才有这个参数,CGI方式安装的启动程序--enable-fastCGI //支持fastcgi方式启动PHP--enable-force-CGI-redirect //重定向方式启动PHP--with-ncurses //支持ncurses 屏幕绘制以及基于文本终端的图形互动功能的动态库--enable-pcntl //freeTDS需要用到的,可能是链接mssql 才用到--with-mcrypt //mcrypt算法的扩展--with-mhash //mhash算法的扩展//以上函数库需要安装--with-gmp //应该是支持一种规范--enable-inline-optimization //优化线程--with-openssl //openssl的支持,加密传输时用到的--enable-dbase //建立DBA 作为共享模块--with-pcre-dir=/usr/local/bin/pcre-config //perl的正则库案安装位置--disable-dmalloc--with-gdbm //dba的gdbm支持--enable-sigchild--enable-sysvsem--enable-sysvshm--enable-zend-multibyte //支持zend的多字节--enable-mbregex--enable-wddx--enable-shmop--enable-soap
