直接用taskkill /f /im httpd.exe可强制终止phpstudy或xampp中的apache主进程;php本身不单独成进程,而是由httpd.exe、nginx.exe或php-cgi.exe等承载运行,需先用tasklist确认实际进程名再精准终止。

直接用 taskkill /f /im httpd.exe 就能杀掉 PHPStudy 或 WAMP/XAMPP 中的 Apache 主进程;但 PHP 本身不单独成进程,它通常由 Web 服务器(如 httpd.exe、nginx.exe)或 PHP-CGI/PHP-FPM 托管运行,所以“杀 PHP 进程”实际是杀承载它的服务进程。
先确认真实进程名
PHP 环境不同,对应进程名也不同,不能默认写 php.exe:
- Apache + mod_php:主进程是 httpd.exe(常见于 PHPStudy、XAMPP)
- Nginx + PHP-FPM:Web 服务是 nginx.exe,PHP 处理是 php-cgi.exe 或 php-fpm.exe
-
独立 CLI 脚本:比如你双击运行了
test.php,背后可能是 php.exe 或 php-w.exe - 用
tasklist | findstr "php"或tasklist | findstr "httpd\|nginx\|cgi"查准正在跑的镜像名,注意必须带 .exe 后缀
按进程名批量终止(最常用)
适合关掉整个 PHP 环境,比如 Apache 卡死、端口被占:
-
taskkill /f /im httpd.exe—— 杀所有 Apache 工作进程 -
taskkill /f /im nginx.exe—— 杀 Nginx 主进程 -
taskkill /f /im php-cgi.exe—— 杀 CGI 模式下的 PHP 子进程 - 进程名含空格?加英文双引号:
taskkill /f /im "php-cgi.exe"
按 PID 精准终止(防误杀)
当多个 httpd.exe 同时运行(比如多个虚拟主机),只想关其中一个实例时用:
- 在任务管理器「详细信息」页,右键列标题 → 勾选「PID」,找到目标 httpd.exe 对应的数字(如 8842)
- 执行:
taskkill /f /pid 8842 - 支持一次杀多个:
taskkill /f /pid 8842 /pid 9105
连子进程一起清干净
现代 PHP 环境常派生子进程(如日志轮转、FastCGI 池、扩展守护进程),只杀主进程可能残留:
- 加 /t 参数递归清理:
taskkill /f /t /im httpd.exe - 等效于关掉 Apache 主进程 + 所有工作子进程 + 可能的 php-cgi 实例
- 对 Nginx + PHP-FPM 架构,建议分别执行:
taskkill /f /t /im nginx.exe和taskkill /f /t /im php-fpm.exe
php免费学习视频:立即使用
踏上前端学习之旅,开启通往精通之路!从前端基础到项目实战,循序渐进,一步一个脚印,迈向巅峰!











