news 2026/4/15 17:55:03

蓝易云 - 如何在Ubuntu 22.04上安装PHP8.1并设置本地开发环境

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
蓝易云 - 如何在Ubuntu 22.04上安装PHP8.1并设置本地开发环境

下面给你一套在 Ubuntu 22.04 上落地 PHP 8.1 的本地开发环境方案,按“最稳、最少坑、可扩展”的工程化路径来做。🙂


1)安装策略先定:用官方源还是第三方源?🧭

方案适用场景风险/成本推荐度
Ubuntu 22.04 官方源只需要 PHP 8.1(本题)依赖最少、稳定性高⭐⭐⭐⭐⭐
第三方 PPA(如 ondrej)需要多版本共存/更激进版本维护成本更高、升级需谨慎⭐⭐⭐

结论:你要的就是 8.1,本地开发直接走官方源即可(Ubuntu 22.04 原生提供 8.1 系列包,常规安装方式就是apt install php8.1 ...)。(digitalocean.com)


2)一步到位安装 PHP8.1 + 常用扩展(CLI 本地开发最实用)🧰

sudo apt update sudo apt install -y php8.1 php8.1-cli php8.1-common php8.1-mbstring php8.1-xml php8.1-curl php8.1-zip php8.1-gd php8.1-mysql php8.1-intl php -v

逐段解释(务实版):

  • sudo apt update
    用于刷新本机软件索引,保证你安装到的是仓库里当前可用的包版本,避免“装不上/依赖缺失”这类低级故障。

  • sudo apt install -y ...
    安装 PHP 8.1 及高频扩展:

    • php8.1-cli:命令行运行 PHP(本地开发、脚本、Composer 都依赖它)

    • mbstring/xml/curl/zip/gd/intl:现代 Web 项目常用组件(编码、多语言、HTTP、压缩、图片、国际化)

    • php8.1-mysql:连接 MySQL/MariaDB(本地联调基本都会用)

  • php -v
    验证当前 PHP 版本与运行环境是否就绪,是最直接的“验收点”。


3)最轻量本地开发:用 PHP 内置服务器跑起来(无需 Apache/Nginx)🚀

mkdir -p ~/phpdev/public printf "<?php phpinfo();" > ~/phpdev/public/index.php php -S 127.0.0.1:8000 -t ~/phpdev/public

逐段解释:

  • mkdir -p ~/phpdev/public
    创建项目根目录与 Web 根目录(public),符合多数框架“入口文件隔离”的习惯。

  • printf ... > index.php
    写入测试页,用于确认 PHP 解析链路是否通了。

  • php -S 127.0.0.1:8000 -t ...
    启动内置 Web Server:

    • 127.0.0.1只对本机开放,安全边界更清晰

    • 8000是监听端口

    • -t指定站点根目录(把代码与运行目录绑定起来)

这套方式非常适合:接口联调、功能验证、学习练手;启动快、依赖少。


4)需要“更像生产”的本地环境:Apache + PHP8.1(可选)🧩

sudo apt install -y apache2 libapache2-mod-php8.1 sudo a2enmod php8.1 sudo systemctl restart apache2

逐段解释:

  • apache2:安装 Web Server(适合传统 LAMP 开发习惯)。

  • libapache2-mod-php8.1:让 Apache 直接加载 PHP 模块来解析.php。(Ask Ubuntu)

  • a2enmod php8.1:启用 PHP8.1 模块(如果之前启过其他版本,这一步尤其关键)。(Ask Ubuntu)

  • systemctl restart apache2:重启服务使配置生效,属于标准变更发布动作。


5)工作流图:从“安装”到“可开发”的最短路径 🧠

flowchart TD A[更新软件索引 apt update] --> B[安装 PHP8.1 + 扩展] B --> C[php -v 验收] C --> D{开发形态选择} D --> E[内置服务器 php -S 本地跑] D --> F[Apache + libapache2-mod-php8.1 更像生产]

6)两个关键加固点(少踩坑就是效率)✅

  • 把 扩展 当成“依赖资产”管理:缺mbstring/xml/intl往往不是代码问题,是环境不一致。

  • 如果你后续要装多版本 PHP,建议再引入第三方源做版本治理,但要把升级窗口、回滚策略当成正式变更来做(别在业务高峰期“顺手升级”)。


如果你告诉我你要用的是Laravel / ThinkPHP / 原生 PHP,以及是否需要MySQL、Redis、Xdebug,我可以把这套环境进一步“产品化”:给你一份可复制的安装清单与最小化配置模板,直接用于团队统一开发基线。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/15 7:35:05

315MHz与433MHz无线遥控接收解码Keil源程序及AD格式电路图详解

315/433MHZ无线遥控接收解码源程序 Keil源程序 含AD格式电路图手头有个老项目用到了315MHz遥控器收发方案&#xff0c;最近翻出来重新整理了下解码部分的代码。这种无线模块虽然传输速率低&#xff0c;但胜在成本够低&#xff0c;特别适合车库门、报警器之类的场景。咱们直接拆…

作者头像 李华
网站建设 2026/4/15 7:34:37

【Docker私有仓库拉取实战指南】:掌握企业级镜像管理的5大核心技巧

第一章&#xff1a;Docker私有仓库拉取的核心概念与意义在现代容器化应用部署中&#xff0c;Docker私有仓库扮演着至关重要的角色。它不仅提供了镜像存储与分发的能力&#xff0c;还增强了企业对镜像安全、访问控制和网络效率的管理。与公有仓库&#xff08;如Docker Hub&#…

作者头像 李华
网站建设 2026/4/15 7:39:27

开源社区贡献指南:参与VibeThinker后续版本开发

开源社区贡献指南&#xff1a;参与VibeThinker后续版本开发 在AI模型参数规模不断膨胀的今天&#xff0c;一个仅15亿参数的小模型却悄然在数学推理和算法编程领域崭露头角——这正是微博开源的 VibeThinker-1.5B-APP。它没有追逐“通用智能”的宏大叙事&#xff0c;而是另辟蹊径…

作者头像 李华
网站建设 2026/4/14 10:03:09

Docker日志暴增导致磁盘满载?快速定位并优化输出策略

第一章&#xff1a;Docker日志暴增现象的识别与影响在运行容器化应用时&#xff0c;Docker日志暴增是一个常见但容易被忽视的问题。当日志未加限制地持续写入&#xff0c;容器的日志文件可能迅速膨胀&#xff0c;占用大量磁盘空间&#xff0c;甚至导致宿主机磁盘满载&#xff0…

作者头像 李华
网站建设 2026/4/14 15:56:07

还在手动部署微服务?5个高并发场景下的Docker自动化脚本案例

第一章&#xff1a;微服务部署的挑战与Docker化转型在现代软件架构演进过程中&#xff0c;微服务因其高内聚、低耦合的特性被广泛采用。然而&#xff0c;随着服务数量的增长&#xff0c;传统部署方式暴露出环境不一致、依赖冲突、部署效率低下等问题。开发人员常遇到“在我机器…

作者头像 李华
网站建设 2026/4/15 7:39:27

Docker跨平台测试实战精要(专家20年经验倾囊相授)

第一章&#xff1a;Docker跨平台测试概述在现代软件开发中&#xff0c;确保应用程序在不同操作系统和环境中的一致性行为是质量保障的关键环节。Docker 通过容器化技术封装应用及其依赖&#xff0c;实现了“一次构建&#xff0c;随处运行”的理想模式&#xff0c;为跨平台测试提…

作者头像 李华