很多人在购买了云服务器之后,第一件事就是准备部署网站或运行项目,而这一步里最常见、也最让新手头疼的事情之一,就是安装 PHP。尤其是在第一次接触服务器时,面对终端命令、软件源、版本选择、服务配置,往往会有一种“每个字都认识,连起来却看不懂”的感觉。其实,只要思路理顺,操作步骤拆开来看,阿里云linux安装php并没有想象中那么难。

这篇文章会以真正适合小白的方式,带你从准备工作开始,一步一步完成 PHP 的安装与验证,同时也会结合实际案例,告诉你在阿里云服务器上安装 PHP 时最容易踩的坑有哪些,应该如何避开。无论你是想搭建 WordPress 博客、部署企业官网,还是运行 Laravel、ThinkPHP、Discuz 等应用,都可以按本文的方法完成基础环境搭建。
一、先搞清楚:你到底要在什么环境里安装 PHP
在开始操作之前,先明确一个关键问题:你的阿里云服务器使用的是哪种 Linux 发行版。因为不同系统,安装方式会有区别。阿里云上常见的 Linux 系统主要有以下几类:
- CentOS 7 / CentOS Stream
- Alibaba Cloud Linux
- Ubuntu 20.04 / 22.04
- Debian
如果你是新手,最简单的判断方式就是登录服务器后执行以下命令:
cat /etc/os-release
系统会返回当前发行版信息。比如显示 Ubuntu,就说明你应该使用 apt 命令安装;如果是 CentOS 或 Alibaba Cloud Linux,通常更偏向 yum 或 dnf。
为什么这个步骤很重要?因为很多人在网上复制教程时,根本没看教程对应的系统版本,结果把 Ubuntu 的命令拿到 CentOS 上执行,报错以后就以为服务器坏了。实际上,阿里云linux安装php最重要的第一步,就是确认系统环境,再对应选择安装方法。
二、安装前需要做的准备工作
在正式安装 PHP 之前,建议先做好以下几项准备,这能让后面的流程顺很多。
- 使用 SSH 登录服务器
如果你在 Windows 上,可以用 Xshell、FinalShell、PuTTY,或者直接使用 Windows Terminal。Mac 用户可以直接打开终端。
- 切换到 root 用户或具备 sudo 权限的用户
执行系统级安装命令通常需要管理员权限。如果你不是 root,可以在命令前加 sudo。
- 更新系统软件包
无论是 CentOS 还是 Ubuntu,先更新软件列表和已安装组件,是一个非常值得养成的习惯。
CentOS / Alibaba Cloud Linux:
yum update -y
Ubuntu / Debian:
apt update && apt upgrade -y
- 确认安全组是否放行必要端口
如果你后续还要配合 Nginx 或 Apache 使用 PHP,那么至少要确认 80 端口、443 端口是否在阿里云控制台的安全组中放行。否则即使安装成功,浏览器也无法访问网站。
三、PHP版本应该怎么选
这是阿里云linux安装php过程中经常被忽略的问题。很多新手觉得“版本越新越好”,但实际上,版本选择要和项目兼容。举几个常见例子:
- WordPress 新版通常支持 PHP 8.0 以上
- Laravel 新项目可能要求 PHP 8.1 或更高
- 一些老旧网站程序可能仍依赖 PHP 7.4
- 某些历史系统甚至还停留在 PHP 5.x,但这种情况已经不建议继续使用
如果你是新搭建的网站,建议优先考虑 PHP 8.1 或 PHP 8.2,兼顾性能与兼容性。如果你是接手老项目,最好先看项目说明文档,确认支持版本,再决定安装哪一版。
四、在 CentOS 或 Alibaba Cloud Linux 上安装 PHP
如果你的阿里云服务器是 CentOS 系列或 Alibaba Cloud Linux,可以按下面的思路来安装。
先查看系统中是否已存在可用 PHP 包:
yum search php
在一些默认仓库中,PHP 版本可能偏旧。如果你想安装较新的 PHP 版本,通常需要启用额外的软件源,比如 EPEL 或 Remi。不过对新手来说,如果你使用的是 Alibaba Cloud Linux 较新版本,很多情况下官方源已经足够使用。
一个较常见的安装命令如下:
yum install -y php php-cli php-fpm php-mysqlnd php-gd php-xml php-mbstring php-opcache php-pdo
这里顺便解释一下这些组件的作用:
- php:PHP 核心包
- php-cli:命令行运行 PHP 所需
- php-fpm:与 Nginx 配合时常用的 PHP 进程管理器
- php-mysqlnd:连接 MySQL 数据库支持
- php-gd:图片处理支持
- php-xml:XML 解析支持
- php-mbstring:多字节字符串处理,中文站点很常用
- php-opcache:提升 PHP 执行效率
- php-pdo:数据库访问抽象层
安装完成后,执行:
php -v
如果能看到版本信息,说明 PHP 已经安装成功。
五、在 Ubuntu 上安装 PHP
如果你的阿里云服务器运行的是 Ubuntu,那么安装过程一般会更直观一些。以 Ubuntu 20.04/22.04 为例,先更新软件源:
apt update
然后安装 PHP 和常用扩展:
apt install -y php php-cli php-fpm php-mysql php-gd php-xml php-mbstring php-curl php-zip php-bcmath
安装完成后,同样执行:
php -v
看到类似 PHP 8.1.x 或 PHP 8.2.x 的输出,就代表安装成功。
如果你需要指定安装某个版本,例如 PHP 8.1,也可以写成:
apt install -y php8.1 php8.1-cli php8.1-fpm php8.1-mysql php8.1-gd php8.1-xml php8.1-mbstring
对新手来说,使用系统默认推荐版本是最省心的做法,除非你的项目明确要求特定版本。
六、安装完 PHP 还不够,你还需要会验证
很多人执行完安装命令,看到没报错就以为完成了。但真正的服务器部署不能停在“似乎装上了”,而是要确认 PHP 是否真的能正常工作。
最直接的方式有两种。
第一种:命令行测试
执行:
php -m
这个命令会列出当前已启用的 PHP 扩展。你可以看看 mysql、mbstring、xml、gd 等常用模块是否存在。
第二种:创建 phpinfo 页面
如果你已经安装了 Nginx 或 Apache,可以在网站根目录创建一个测试文件,例如:
info.php
文件内容为:
<?php phpinfo(); ?>
然后通过浏览器访问你的服务器地址加上 /info.php。如果页面中显示出 PHP 版本、扩展、配置路径等大量信息,就说明 Web 环境中的 PHP 也工作正常。
不过要提醒一点:测试完成后,最好删除这个文件。因为 phpinfo 页面会暴露很多服务器环境信息,从安全角度看,不适合长期保留。
七、如果你用的是 Nginx,别忘了启动 PHP-FPM
在阿里云linux安装php的实际应用中,很多网站都会采用 Nginx + PHP-FPM 的组合。此时,安装完 PHP 后,还需要启动并设置 php-fpm 开机自启。
CentOS / Alibaba Cloud Linux 常见操作:
systemctl start php-fpm
systemctl enable php-fpm
Ubuntu 如果是特定版本,例如 PHP 8.1,则可能是:
systemctl start php8.1-fpm
systemctl enable php8.1-fpm
你还可以用以下命令查看运行状态:
systemctl status php-fpm
或者:
systemctl status php8.1-fpm
如果状态显示 active (running),说明服务已经正常启动。
八、Nginx 配置 PHP 解析的基本思路
有些朋友安装完 PHP 后,访问网站却直接下载 PHP 文件,或者页面一片空白。这往往不是 PHP 没装好,而是 Nginx 没配置 PHP 解析。
在 Nginx 站点配置中,通常需要加入类似下面的逻辑:遇到 .php 文件时,转交给 php-fpm 处理。不同系统上 sock 文件路径可能不同,例如:
- /run/php/php8.1-fpm.sock
- /var/run/php-fpm/php-fpm.sock
- 127.0.0.1:9000
你需要根据自己的系统和 PHP-FPM 配置来调整。配置修改后,执行 Nginx 配置检查:
nginx -t
如果没有报错,再重启或重新加载 Nginx:
systemctl reload nginx
这一步虽然不属于“安装 PHP”本身,但在真实部署场景中,它是让 PHP 真正跑起来的关键环节。
九、实际案例:一台阿里云 Ubuntu 服务器部署 WordPress
为了让你更容易理解,我们来看一个真实而典型的案例。
假设你买了一台阿里云 ECS 服务器,系统是 Ubuntu 22.04,你想部署一个 WordPress 博客。你的目标很简单:让网站能访问、能连接数据库、后台可以正常使用。
这时候你的环境需求通常是:
- Nginx
- PHP-FPM
- MySQL 或 MariaDB
- PHP 常用扩展,如 mysql、xml、gd、mbstring、curl、zip
你可以执行以下安装思路:
apt update
apt install -y nginx mysql-server php php-fpm php-mysql php-gd php-xml php-mbstring php-curl php-zip
安装完之后,启动并检查服务:
- Nginx 是否启动
- MySQL 是否启动
- PHP-FPM 是否运行
接着创建数据库、下载 WordPress 程序、配置站点目录权限,再在 Nginx 中配置 PHP 解析。完成后,你就可以通过域名访问安装页面。
在这个案例中,阿里云linux安装php并不是孤立的一步,而是整个网站环境搭建中的核心一环。PHP装得是否完整,直接决定 WordPress 后台能否正常运行、插件能否安装、图片能否处理、页面是否报错。
十、最常见的几个报错与解决方法
新手在安装 PHP 的过程中,最怕遇到报错。其实大多数问题都不复杂,关键是要知道问题出在哪里。
1. 执行 php -v 提示命令不存在
这种情况通常说明 PHP 根本没有安装成功,或者 PATH 没有正确识别。先重新确认安装命令是否执行完成,再通过包管理器查询:
rpm -qa | grep php
或
dpkg -l | grep php
2. 安装扩展时报找不到软件包
这往往是软件源没有更新,或者当前仓库不包含该版本。解决思路是先执行 apt update 或 yum update,再检查是否需要额外源。
3. 网站访问显示空白页
空白页不一定是 Nginx 配置错,也可能是 PHP 报错但未显示。你可以查看 PHP-FPM 日志、Nginx 错误日志,找到真正原因。有时只是缺少某个扩展,例如 mbstring、pdo_mysql、xml。
4. 访问 PHP 文件变成下载
这几乎可以直接判断为 Web 服务器没有把 .php 文件交给 PHP-FPM 处理,应该重点检查 Nginx 或 Apache 配置。
5. PHP 连接数据库失败
这通常有三个方向:数据库账号密码不对、数据库服务没启动、缺少 php-mysql 或 php-mysqlnd 扩展。不要一看到数据库报错就先怀疑 MySQL,很多时候其实是 PHP 扩展没装。
十一、安装完成后,建议顺手做的优化
当你成功完成阿里云linux安装php之后,不妨再顺手做几项优化,让环境更稳定、更安全。
- 关闭暴露版本信息:减少不必要的信息泄露
- 调整时区:保证日志和程序时间一致
- 开启 OPcache:提升 PHP 执行性能
- 限制上传大小和执行时间:避免默认配置过小或过大
- 删除测试用 phpinfo 文件:防止环境信息泄露
PHP 配置文件通常可以通过以下命令查找:
php –ini
你可以看到 php.ini 的位置,以及额外扩展配置文件所在目录。修改配置后,记得重启 php-fpm 使之生效。
十二、小白最应该记住的不是命令,而是顺序
很多教程喜欢一上来就贴一堆命令,但对新手来说,真正重要的不是死记命令,而是理解正确顺序。你只要记住下面这个流程,之后无论系统怎么变,思路都不会乱:
- 确认阿里云服务器系统版本
- 更新软件源和系统组件
- 选择合适的 PHP 版本
- 安装 PHP 核心包和常用扩展
- 执行 php -v 验证安装结果
- 启动 php-fpm 并设置开机自启
- 配置 Nginx 或 Apache 解析 PHP
- 创建测试页验证 Web 访问
- 删除测试文件并做基础安全优化
只要按照这个顺序走,阿里云linux安装php这件事就会变得非常清晰。即便中间遇到报错,你也能迅速判断是在“安装阶段”“服务阶段”还是“Web 配置阶段”出了问题。
十三、写在最后:一次安装成功,靠的是耐心而不是运气
对于初学者来说,服务器环境配置之所以让人有压力,不是因为它真的特别难,而是因为步骤多、细节碎、报错信息看起来吓人。但只要你愿意按顺序拆解问题,很多操作其实都很机械,很容易复现。阿里云linux安装php也是如此。你不需要一开始就懂所有原理,只需要先完成一次完整安装,再在过程中逐步理解每个组件的作用。
如果你当前只是想把网站先跑起来,那么本文给出的流程已经足够你完成从零到一的搭建;如果你后续还想进阶学习,那么可以继续深入研究 PHP-FPM 进程管理、Nginx 性能调优、数据库优化、Composer 依赖管理等内容。对服务器运维来说,第一次装成功非常重要,因为这会帮你建立信心。等你真正走通一次之后,你会发现,所谓“小白也能一次搞定”,并不是一句夸张的宣传语,而是完全可以实现的事实。
内容均以整理官方公开资料,价格可能随活动调整,请以购买页面显示为准,如涉侵权,请联系客服处理。
本文由星速云发布。发布者:星速云小编。禁止采集与转载行为,违者必究。出处:https://www.67wa.com/211236.html