news 2026/9/22 10:25:11

蓝易云 - 如何在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/9/21 8:16:30

延吉本地人去的烤肉哪家好吃

延吉本地人钟情的延炭乳酸菌烤肉在延吉&#xff0c;烤肉是当地美食文化中一颗璀璨的明珠&#xff0c;深受本地人的喜爱。而在众多烤肉店中&#xff0c;延炭乳酸菌烤肉脱颖而出&#xff0c;成为不少延吉本地人常去的选择。招牌菜品&#xff0c;独具风味延炭乳酸菌烤肉以其独特的…

作者头像 李华
网站建设 2026/9/17 17:48:57

TypeScript强类型定义:提升开发体验减少错误

TypeScript强类型定义&#xff1a;提升开发体验减少错误 在构建一个能够稳定调用轻量级高精度推理模型&#xff08;如 VibeThinker-1.5B-APP&#xff09;的系统时&#xff0c;开发者最怕什么&#xff1f;不是模型性能不够&#xff0c;也不是部署复杂——而是一次拼写错误导致整…

作者头像 李华
网站建设 2026/9/21 8:16:30

基于Django的课程学分成绩管理系统

文章目录 基于Django的课程学分成绩管理系统摘要 项目简介大数据系统开发流程主要运用技术介绍爬虫核心代码展示结论源码文档获取定制开发/同行可拿货,招校园代理 &#xff1a;文章底部获取博主联系方式&#xff01; 基于Django的课程学分成绩管理系统摘要 该系统旨在为高校或…

作者头像 李华
网站建设 2026/9/20 22:19:08

中文提示会降级吗?VibeThinker-1.5B语言适应性深度评测

中文提示会降级吗&#xff1f;VibeThinker-1.5B语言适应性深度评测 在大模型参数规模不断膨胀的今天&#xff0c;我们似乎已经习惯了“越大越好”的性能逻辑。然而&#xff0c;当训练成本动辄突破百万美元、部署依赖高端GPU集群时&#xff0c;一个反向趋势正在悄然兴起&#xf…

作者头像 李华
网站建设 2026/9/7 16:38:39

CMenu InsertMenuItem函数:参数设置与MENUITEMINFO结构详解

对于Windows API编程的开发者来说&#xff0c;CMenu::InsertMenuItem函数是一个在现有菜单中动态插入新项目的核心工具。它比简单的追加提供了更精确的控制&#xff0c;允许你将菜单项插入到指定位置&#xff0c;是实现上下文菜单、动态菜单更新的关键技术。理解其参数的正确用…

作者头像 李华
网站建设 2026/9/17 11:54:16

Twitter技术圈热议:VibeThinker被称作‘Mini AlphaProof’

VibeThinker&#xff1a;小模型如何实现“逻辑超频”&#xff1f; 在AI圈&#xff0c;参数规模曾长期被视为性能的代名词。百亿、千亿级大模型轮番登场&#xff0c;仿佛谁的算力堆得更高&#xff0c;谁就掌握了智能的钥匙。但最近&#xff0c;一个仅15亿参数的小模型突然闯入技…

作者头像 李华