如何在服务器上安装 PHP(Linux / Windows / macOS)

这篇文章会带你在 Linux、Windows 和 macOS 三个系统上完成 PHP 的安装,并介绍如何与 Apache 或 Nginx 配合使用、安装常用扩展,以及验证安装是否成功。

如何在服务器上安装 PHP(Linux / Windows / macOS)

安装前的准备工作

正式开始之前,有几件事需要先确认,跳过这些步骤很容易在后面遇到报错。

命令行基础(Linux / macOS 用户):安装过程中需要在终端里输入命令,熟悉基本的目录导航和包管理操作会让整个过程顺畅很多。

管理员权限:安装软件、修改配置文件都需要 root 或管理员权限,没有这个权限安装无法完成。

更新系统:安装前先把系统更新一遍,可以避免很多兼容性问题。Ubuntu/Debian 用 sudo apt update && sudo apt upgrade,CentOS 用 sudo yum update

检查是否已安装:有些系统自带 PHP,先在终端运行 php -v 确认一下。如果显示版本号,说明已经安装;如果报错,再继续下面的步骤。


在 Linux 上安装 PHP

Linux 是跑 PHP 最常见的环境,不同发行版的命令略有差异。

Ubuntu / Debian 系

第一步:更新软件包列表

sudo apt update

第二步:安装 PHP 及常用模块

这条命令会同时安装 PHP、Apache 集成模块和 MySQL 支持,大多数应用都需要这些。

sudo apt install php libapache2-mod-php php-mysql

第三步:验证安装

php -v

第四步:配置 Web 服务器

使用 Apache 的话,重启服务即可:

sudo systemctl restart apache2

使用 Nginx 的话,需要安装 PHP-FPM 来处理 PHP 文件:

sudo apt install php-fpm
sudo systemctl restart nginx

CentOS / RHEL 系

# 更新系统
sudo yum update

# 安装 PHP 及扩展
sudo yum install php php-cli php-mysqlnd

# 验证版本
php -v

# 重启 Web 服务器
sudo systemctl restart httpd   # Apache
sudo systemctl restart nginx   # Nginx

Fedora

# 安装 PHP
sudo dnf install php php-cli php-mysqlnd

# 验证版本
php -v

# 重启 Web 服务器
sudo systemctl restart httpd   # Apache
sudo systemctl restart nginx   # Nginx

到这里,PHP 在 Linux 上的安装就完成了,接下来可以进行配置和测试。


在 Windows Server 上安装 PHP

Windows 不自带 PHP,需要手动安装配置。

第一步:从官网下载 PHP

前往 php.net 下载适合 Windows 的最新稳定版。注意版本选择:配合 Apache 使用选 Thread Safe 版,配合 IIS 使用选 Non-Thread Safe 版。

第二步:解压文件

将下载的压缩包解压到一个固定目录,比如:

C:\php

第三步:配置 php.ini

在解压目录里找到 php.ini-developmentphp.ini-production,复制一份并重命名为 php.ini,用文本编辑器打开,按需开启所需扩展(如 extension=mysqli)和设置时区。

第四步:添加到系统环境变量

为了能在任意位置执行 PHP 命令,需要把 PHP 目录加入系统 PATH:

右键”此电脑”→ 属性 → 高级系统设置 → 环境变量 → 在系统变量中找到 Path → 编辑 → 新增 C:\php,保存后重启服务器。

第五步:与 Web 服务器集成

使用 Apache 的话,打开 httpd.conf 文件,在末尾添加:

LoadModule php_module "C:/php/php8apache2_4.dll"
AddHandler application/x-httpd-php .php
PHPIniDir "C:/php"

保存后重启 Apache。

使用 IIS 的话,可以安装 PHP Manager for IIS 工具,通过图形界面完成注册和配置,省去手动编辑的麻烦。

第六步:验证安装

在网站根目录(如 C:\inetpub\wwwroot\)创建一个 phpinfo.php 文件,内容如下:

<?php
phpinfo();
?>

打开浏览器访问 http://localhost/phpinfo.php,看到 PHP 配置信息页面就说明安装成功了。


在 macOS 上安装 PHP

先检查是否已预装

php -v

较旧版本的 macOS 会自带 PHP,较新版本已经移除了。如果命令报错,继续下面的步骤。

安装 Homebrew

macOS 上最方便的方式是通过 Homebrew 安装 PHP。如果还没装 Homebrew,运行:

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

安装 PHP

brew install php

启动 PHP 服务

brew services start php

验证安装

php -v

看到版本号就大功告成了。


安装 PHP 扩展

PHP 扩展为服务器提供额外功能,很多应用都依赖特定扩展才能正常运行。比如 WordPress 需要 mysqlipdo_mysql 连接数据库,Laravel 依赖 mbstring,图片处理功能需要 gdimagick

Ubuntu / Debian

sudo apt install php-xml php-curl php-gd

安装后重启 Apache 或 Nginx。

CentOS / RHEL

sudo yum install php-xml php-curl php-gd

Windows

PHP 的 Windows 安装包里已经包含这些扩展文件,只是默认没有启用。打开 php.ini,找到对应扩展的那一行,去掉行首的分号即可启用:

;extension=curl   →   extension=curl
;extension=gd     →   extension=gd

保存文件,重启 Apache 或 IIS。


测试安装是否正常

创建测试文件

在 Linux 上,进入网站根目录创建文件:

nano /var/www/html/phpinfo.php

写入以下内容:

<?php
phpinfo();
?>

在浏览器中访问

http://你的服务器IP/phpinfo.php

如果能看到一个详细的 PHP 配置信息页面,说明安装和配置都没问题。如果页面直接下载而不是展示内容,说明 Web 服务器还没正确处理 PHP 文件,需要回头检查配置。

测试完记得删除这个文件,该页面会暴露服务器的详细配置信息,不适合公开访问。


常见问题处理

命令行不识别 php 命令:通常是 PHP 没有加入系统 PATH。Windows 用户检查环境变量配置,Linux / macOS 用户检查 shell 配置文件。

PHP 文件被下载而不是执行:说明 Web 服务器没有配置好 PHP 处理。Apache 用户检查 PHP 模块是否启用,Nginx 用户检查 PHP-FPM 配置,修改后重启服务器。

安装了旧版本的 PHP:有些系统默认安装较旧的版本。可以指定版本安装,比如 sudo apt install php8.1;Windows 用户直接从 php.net 下载所需版本。

报错提示缺少扩展:根据错误信息,用对应的包管理器安装缺失的扩展,或在 php.ini 里启用。


保持 PHP 更新

运行过时版本的 PHP 会带来安全风险,官方已停止支持的版本不再获得安全补丁。

Linux 更新命令:

# Ubuntu/Debian
sudo apt update && sudo apt upgrade

# CentOS/RHEL
sudo yum update

# Fedora
sudo dnf upgrade

Windows:从官网下载新版本,替换安装目录中的文件,根据需要更新 php.ini,重启 Web 服务器。

建议定期检查 PHP 官网的版本公告,及时跟进更新,既能享受性能提升,也能保持安全防护。

PHP 装好之后,你的服务器就具备了托管动态网站和 Web 应用的基础能力。下一步可以着手连接数据库,或者搭建 Laravel、WordPress 这类框架和平台,让服务器真正跑起来。

原创文章,作者:余初云,如若转载,请注明出处:https://blog.jidcy.com/jsjc/2507.html

Like (0)
Previous 2026年4月20日 上午10:19
Next 2026年4月20日 上午11:38

相关推荐

  • 网络防火墙是什么?

    防火墙是什么? 防火墙是搭建在不同网络区间,例如可信企业内网与陌生公共网络,或是各类网络安全分区之间的设备组合体系。它能够管控、筛查并调整往来数据流,对外隐藏内网数据、架构与运行情…

    2026年5月25日
    0
  • WAF防火墙的作用

    随着WEB应用的广泛普及,WEB服务器凭借其强大的运算能力、处理性能以及所承载的较高价值,逐步成为主要的攻击目标。SQL注入、页面篡改、网页挂马等安全事件屡见不鲜。传统防火墙难以对…

    2026年6月5日
    0
  • 如何在CentOS和Fedora操作系统上设置时区和NTP?

    对于服务器管理员来说,正确配置和维护服务器上的时间是很重要的。错误的时间配置将导致服务器环境混乱,例如数据不一致、数据同步失败和作业调度等问题。为了避免这些情况,首先需要在服务器上…

    2026年5月28日
    0
  • 什么是反向DNS?如何做DNS反向查询?

    反向 DNS,也称为 rDNS,是网络和网络安全领域中一项重要技术。它本质上与传统的前向 DNS 查找相反,后者接收域名并返回相应的 IP 地址。相比之下,反向 DNS 查询会接收…

    2026年3月25日
    0
  • 什么是 Node.js?一文读懂其优势与不足

    在 Web 开发领域,JavaScript 长期占据客户端编程语言的主流地位。它的价值早已不局限于前端交互,在跨平台应用开发方面同样用途广泛。React Native、PhoneG…

    2026年4月20日
    0
  • 网络信息安全是什么?要如何做?

    网络信息安全即网络空间中的信息安全保障,是指网络体系的硬件配置、软件程序及其体系内的数据获得有效防护,免受偶然性或恶意性因素的损毁、篡改、泄露,确保体系持续稳定正常运作,网络服务持…

    2026年6月30日
    0
  • 什么是WebShell?

    在Linux系统当中,Shell指的是操作系统所提供的命令行运行环境,而与之对应的WebShell,则是指通过Web方式呈现出来的一种Shell环境。部分管理后台系统支持在不直接登…

    2026年7月31日
    0
  • MongoDB是什么?优缺点、特点及应用场景一网打尽!

    在数字化时代,数据库扮演着至关重要的角色,无论是个人用户还是企业,都需要具备数据存储、缓存、搜索索引、异步处理以及批量处理等功能。目前存在多种不同的数据库和数据管理系统,其中Mon…

    2026年4月2日
    0
  • 什么是远程代码执行(RCE)攻击?

    远程代码执行(RCE)攻击指的是借助系统某一层级存在的安全缺陷,向目标系统中植入并运行恶意指令。攻击者借此可在受害系统上执行各类操作——包括下达系统命令、窃取敏感信息、篡改或加密数…

    2026年6月23日
    0
  • 数据库读写分离是什么?小白一看就懂

    网站运营步入正轨,用户规模从最初寥寥数十人,如今已然突破万人。可随之而来的问题也逐渐凸显,网页加载速度越来越慢,不少用户纷纷吐槽卡顿,网站运行压力肉眼可见攀升。 其实这是网站流量上…

    2026年5月19日
    0