arch linux 上可仅用 php cli、内置服务器(php -s)、xdebug 和 inotify-tools 搭建极简开发环境:装 php 及必要扩展,配 xdebug.ini,用 php -s 启服务,配合 inotifywait 实现文件变更自动重启。

在 Arch Linux 上搭一个只跑 PHP 的独立开发环境,不套 Web 服务器、不拉 Docker、不碰数据库——这事其实比装 LEMP 简单得多,也更符合 Arch 的本意。关键不是“少装什么”,而是“只留必要环节”:PHP CLI 本身足够健壮,配合内置服务器(php -S)+ 可选的 Xdebug + 一个轻量文件监视器,就能支撑日常调试、API 快速验证、脚本开发等绝大多数场景。
精简安装:只装真正需要的包
Arch 的 php 包默认不含常用扩展,也不开调试支持。别用 php 单一包应付,按需组合:
-
核心运行时:
sudo pacman -S php(含 CLI 和 FPM,但本环境不用 FPM) -
开发必需扩展:
sudo pacman -S php-apcu php-intl php-mbstring php-xml php-zip php-gd(APCu 加速 opcode,intl 和 mbstring 处理多语言,xml/zip/gd 是高频依赖) -
调试支持(可选但推荐):
sudo pacman -S php-xdebug,装完后需手动启用:
编辑/etc/php/conf.d/xdebug.ini,写入:zend_extension=xdebug.so xdebug.mode=debug,develop xdebug.start_with_request=yes xdebug.client_host=127.0.0.1
绕过 Web 服务器:用 PHP 内置服务器快速启动
不需要 nginx 或 Apache。PHP 自带的 -S 模式足够干净:
- 进项目目录,执行:
php -S 127.0.0.1:8000 -t ./public router.php(-t指定文档根,router.php是可选的路由转发脚本) - 没 router?直接
php -S 127.0.0.1:8000也能跑,会自动找当前目录下的index.php或返回目录列表 - 注意:
php -S是单线程、无生产级并发能力,纯为开发服务——这正是你要的“轻量”
提升体验:加个文件变化自动重启
每次改完代码手动 Ctrl+C 再敲命令太打断节奏。用 inotifywait(来自 inotify-tools 包)监听 PHP 文件变化:
- 装工具:
sudo pacman -S inotify-tools - 写个简易脚本
dev-server.sh:#!/bin/bash while true; do php -S 127.0.0.1:8000 -t ./public 2>/dev/null & PID=$! inotifywait -e modify,create,delete_self ./app ./config ./public/*.php 2>/dev/null kill $PID 2>/dev/null done -
chmod +x dev-server.sh && ./dev-server.sh,改任意 PHP 文件,服务自动热启
配置即所见:确认加载项与路径
Arch 不写默认配置,你得自己验证 PHP 是否按预期工作:
- 运行
php --ini查看配置文件路径,重点确认Loaded Configuration File非空且指向/etc/php/php.ini - 检查扩展是否生效:
php -m | grep -E "(xdebug|apcu|mbstring)" - 查看实际加载的 ini 文件夹:
php --ini | grep "Scan for additional .ini files",确保/etc/php/conf.d/下的扩展配置被读取 - 如有扩展未加载,检查对应
.ini文件是否存在、语法是否正确(如漏掉分号或引号)
php免费学习视频:立即使用
踏上前端学习之旅,开启通往精通之路!从前端基础到项目实战,循序渐进,一步一个脚印,迈向巅峰!











