ubuntu如何编译安装PHP7.4

发布时间:2021-12-14 17:34:36 作者:小新
来源:亿速云 阅读:479
# 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服务器正确集成

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

推荐阅读:
  1. ubuntu-14.04编译安装PostgreSQL
  2. Ubuntu编译安装 GD以及PHP

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

php7.4 ubuntu

上一篇:css3中复合属性是什么意思

下一篇:Flink maven工程pom.xml怎么生成

相关阅读

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

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