编译安装php

2021-01-02 17:27

阅读:1251

标签:sap   clu   文件   and   libxml   share   map   net   源码   

 

 

  1. 准备编译环境
    yum -y install gcc gcc-c++ make autoconf bzip2 bzip2-devel libpng libpng-devel freetype-devel gmp-devel readline-devel curl-devel libxml2-devel libjpeg-devel bison openssl-devel uw-imap-devel libc-client sqlite-devel libicu-devel libedit-devel libxslt-devel oniguruma oniguruma-devel libzip-devel

     

  2. 下载源码包
    wget https://www.php.net/distributions/php-8.0.0.tar.xz

     

  3. 配置并构建 PHP。在此步骤您可以使用很多选项自定义 PHP,例如启用某些扩展等。 运行 ./configure –help 命令来获得完整的可用选项清单。 在本示例中,我们仅进行包含 PHP-FPM 和 MySQL 支持的简单配置。
    ./configure --prefix=/usr/local/php    --sysconfdir=/etc/php    --with-config-file-path=/etc/php    --with-config-file-scan-dir=/etc/php/php.d    --bindir=/usr/bin    --docdir=/usr/share/doc    --sbindir=/usr/sbin    --libdir=/usr/lib64/php    --with-libdir=/usr/lib64/php    --libexecdir=/usr/libexec    --localstatedir=/var    --includedir=/usr/include    --localedir=/usr/local    --datarootdir=/usr/share    --datadir=/usr/share/php    --mandir=/usr/share/man    --infodir=/usr/share/info    --enable-fpm    --with-fpm-user=www-data    --with-fpm-group=www-data    --enable-mysqlnd    --enable-mysqlnd-compression-support    --enable-json    --with-openssl-dir    --with-zlib-dir    --with-freetype    --enable-gd-jis-conv    --enable-ftp    --enable-filter    --enable-fileinfo    --with-curl    --with-iconv    --with-bz2    --with-zlib    --with-zip    --with-xsl    --with-jpeg    --with-webp    --with-xpm    --without-iconv    --with-kerberos    --with-imap-ssl    --with-openssl    --enable-dom    --with-gettext    --with-mysqli=mysqlnd    --enable-pdo    --with-pdo-mysql=mysqlnd    --enable-simplexml    --enable-session    --enable-sysvsem    --enable-sysvmsg    --enable-sockets    --with-pear    --with-xmlrpc    --with-mhash    --enable-bcmath    --with-cdb    --enable-exif    --with-gmp    --enable-mbstring    --enable-mbregex    --with-readline    --enable-shmop    --enable-soap    --enable-sockets    --enable-pcntl    --enable-intl    --enable-re2c-cgoto    --with-libedit

     

  4. 创建配置文件,并将其复制到正确的位置。
    cp php.ini-production /etc/php/php.ini
    cp sapi/fpm/php-fpm.conf /etc/php/php-fpm.conf
    cp sapi/fpm/www.conf /etc/php/php-fpm.d/www.conf
    cp sapi/fpm/php-fpm.service /etc/systemd/system/php-fpm.service

     

  5. 需要着重提醒的是,如果文件不存在,则阻止 Nginx 将请求发送到后端的 PHP-FPM 模块, 以避免遭受恶意脚本注入的攻击。
    将 php.ini 文件中的配置项 cgi.fix_pathinfo 设置为 0 。
    cgi.fix_pathinfo=0
    groupadd www-data
    useradd --group www-data -s /sbin/nologin --no-create-home www-data
    systemctl start php-fpm

     

编译安装php

标签:sap   clu   文件   and   libxml   share   map   net   源码   

原文地址:https://www.cnblogs.com/dissipate/p/14208303.html


评论


亲,登录后才可以留言!