温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

ubuntu如何编译安装PHP7.4

发布时间:2021-12-14 17:34:36 来源:亿速云 阅读:509 作者:小新 栏目:编程语言
# Ubuntu如何编译安装PHP7.4 ## 前言 PHP作为最流行的服务器端脚本语言之一,广泛应用于Web开发领域。虽然Ubuntu官方仓库提供了PHP的预编译版本,但通过源码编译安装可以获得以下优势: 1. 自定义编译参数,优化性能 2. 灵活选择扩展模块 3. 获取最新版本(官方仓库可能滞后) 4. 深度定制PHP环境 本文将详细介绍在Ubuntu系统上从源码编译安装PHP7.4的全过程,包括环境准备、依赖安装、配置选项、编译安装以及后续配置等步骤。 --- ## 环境准备 ### 系统要求 - Ubuntu 18.04/20.04/22.04 LTS(推荐) - 至少2GB可用内存(编译过程较耗资源) - 10GB以上磁盘空间 - 稳定的网络连接 ### 基础工具安装 首先更新系统并安装基本编译工具: ```bash sudo apt update sudo apt upgrade -y sudo apt install -y build-essential autoconf make libtool pkg-config 

安装依赖项

PHP编译需要大量依赖库,以下是分类安装命令:

1. 核心依赖

sudo apt install -y libxml2-dev libssl-dev libcurl4-openssl-dev \ libsqlite3-dev libonig-dev libzip-dev 

2. 数据库支持

# MySQL/MariaDB支持 sudo apt install -y libmysqlclient-dev # PostgreSQL支持 sudo apt install -y libpq-dev 

3. 常用扩展依赖

sudo apt install -y libgd-dev libwebp-dev libjpeg-dev libpng-dev \ libfreetype6-dev libxslt1-dev libbz2-dev libldap2-dev \ libpspell-dev libicu-dev libtidy-dev libmagickwand-dev 

4. 可选工具

sudo apt install -y re2c bison git 

下载PHP源码

推荐从官方镜像下载(以7.4.33为例):

cd /usr/local/src sudo wget https://www.php.net/distributions/php-7.4.33.tar.gz sudo tar -xzvf php-7.4.33.tar.gz cd php-7.4.33 

注意:可通过PHP官网查看最新7.4.x版本


配置编译选项

执行./configure前,建议先规划需要的功能模块。以下是典型配置示例:

./configure \ --prefix=/usr/local/php7.4 \ --with-config-file-path=/usr/local/php7.4/etc \ --enable-fpm \ --with-fpm-user=www-data \ --with-fpm-group=www-data \ --enable-mbstring \ --enable-zip \ --enable-bcmath \ --enable-pcntl \ --enable-ftp \ --enable-exif \ --enable-calendar \ --enable-sockets \ --enable-soap \ --with-openssl \ --with-curl \ --with-zlib \ --with-bz2 \ --with-gettext \ --with-mysqli=mysqlnd \ --with-pdo-mysql=mysqlnd \ --with-gd \ --with-jpeg \ --with-webp \ --with-freetype \ --with-xsl \ --with-ldap \ --with-tidy \ --with-pspell \ --with-imap-ssl \ --with-pear 

常见配置选项说明

选项 说明
--prefix 安装目录
--enable-fpm 启用PHP-FPM
--with-[ext] 启用特定扩展
--without-[ext] 禁用特定扩展
--with-zlib-dir zlib库路径

提示:使用./configure --help查看所有可用选项


编译与安装

1. 编译源码

make -j $(nproc) 

-j参数指定并行编译进程数(推荐使用CPU核心数)

2. 测试编译结果(可选)

make test 

3. 安装到系统

sudo make install 

4. 清理中间文件

make clean 

配置PHP环境

1. 配置文件设置

sudo cp php.ini-production /usr/local/php7.4/etc/php.ini sudo cp /usr/local/php7.4/etc/php-fpm.conf.default /usr/local/php7.4/etc/php-fpm.conf sudo cp /usr/local/php7.4/etc/php-fpm.d/www.conf.default /usr/local/php7.4/etc/php-fpm.d/www.conf 

2. 修改php.ini关键参数

memory_limit = 256M upload_max_filesize = 64M post_max_size = 64M date.timezone = Asia/Shanghai opcache.enable=1 

3. 配置PHP-FPM

编辑www.conf

user = www-data group = www-data listen = /run/php/php7.4-fpm.sock listen.owner = www-data listen.group = www-data 

创建系统服务

1. 创建systemd服务文件

sudo tee /etc/systemd/system/php7.4-fpm.service <<EOF [Unit] Description=PHP 7.4 FastCGI Process Manager After=network.target [Service] Type=simple ExecStart=/usr/local/php7.4/sbin/php-fpm --nodaemonize --fpm-config /usr/local/php7.4/etc/php-fpm.conf ExecReload=/bin/kill -USR2 \$MNPID [Install] WantedBy=multi-user.target EOF 

2. 启用服务

sudo systemctl daemon-reload sudo systemctl enable php7.4-fpm sudo systemctl start php7.4-fpm 

环境变量配置

1. 添加PHP到PATH

echo 'export PATH="/usr/local/php7.4/bin:$PATH"' >> ~/.bashrc source ~/.bashrc 

2. 验证安装

php -v php -m 

与Web服务器集成

Nginx配置示例

location ~ \.php$ { fastcgi_pass unix:/run/php/php7.4-fpm.sock; fastcgi_index index.php; include fastcgi_params; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; } 

Apache配置示例

<FilesMatch \.php$> SetHandler "proxy:unix:/run/php/php7.4-fpm.sock|fcgi://localhost" </FilesMatch> 

常见问题解决

1. 缺少依赖错误

症状:configure: error: Package requirements (...) were not met 解决方案:安装对应开发包,如sudo apt install libxxx-dev

2. 内存不足

症状:编译过程中被终止 解决方案:增加swap空间或使用make -j1单线程编译

3. 扩展未加载

检查步骤: 1. php -m查看已加载模块 2. 确认扩展.so文件存在 3. 检查php.ini中extension_dir设置


维护与升级

1. 查看已安装模块

php -m 

2. 添加新扩展

cd /usr/local/src/php-7.4.33/ext/[extname] phpize ./configure make && sudo make install 

3. 安全更新

定期检查PHP安全公告,重复编译流程更新版本


总结

通过源码编译安装PHP7.4虽然步骤较多,但可以获得完全定制的PHP环境。关键要点包括:

  1. 安装所有必要的开发依赖
  2. 合理规划configure选项
  3. 正确配置php-fpm服务
  4. 与Web服务器正确集成

建议将编译命令写成脚本以便后续维护,同时记得定期检查更新以确保安全性。 “`

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI