先说几个核心判断:在 CentOS 上搭建 PHP 开发环境,整体思路非常清晰——先做好系统基础准备,接着安装 LAMP 或 LEMP 核心组件,最后优化 PHP 配置,就能顺利进入编码阶段。下面我们逐步拆解每个环节。
第一步:打好系统基础
首先将系统软件包更新到最新版本,这一步不要跳过,安全补丁和功能更新都依赖它。
sudo yum update -y
接着安装 EPEL 仓库,这是一个额外的软件包源,很多 PHP 模块和工具都从这里获取。
sudo yum install epel-release -y
第二步:安装 LAMP/LEMP 核心组件
安装 Apache Web 服务器(LAMP 路线)
Apache 作为 CentOS 生态中的经典组件,几乎是 Web 服务器的默认选择。对大多数 PHP 项目而言,它都能稳定运行。
sudo yum install httpd -y
sudo systemctl start httpd
sudo systemctl enable httpd # 设置开机自启
验证方法很简单:在浏览器中输入 https://你的服务器IP,看到 Apache 的默认欢迎页即表示成功。
安装 MariaDB 数据库(MySQL 的替代方案)
CentOS 默认的数据库是 MariaDB,它与 MySQL 完全兼容,并且在性能上有自己的优势。
sudo yum install mariadb-server mariadb -y
sudo systemctl start mariadb
sudo systemctl enable mariadb
安装完成后,运行安全脚本,设置 root 密码、删除匿名用户、禁止远程 root 登录——这些是基本的安全操作。
sudo mysql_secure_installation
安装 PHP 及常用扩展
一次性安装 PHP 核心以及 MySQL 连接、GD 图像处理、MB 字符串处理等最常用的模块。
sudo yum install php php-mysqlnd php-gd php-mbstring php-xml php-bcmath -y
安装后记得重启 Apache 使 PHP 生效:
sudo systemctl restart httpd
如何验证 PHP 是否安装成功?在 /var/www/html 目录下创建一个 info.php 文件,写入 ,然后访问 https://你的服务器IP/info.php,看到 PHP 信息页面就说明一切正常。
第三步:调教 PHP 环境
修改 PHP 配置
PHP 的主配置文件位于 /etc/php.ini,以下几个参数值得重点关注:
memory_limit:脚本可用的最大内存,建议设为256Mupload_max_filesize:上传文件的大小上限,根据需求设置,例如50Mmax_execution_time:脚本最大执行时间,设为300秒比较稳妥
修改完成后别忘了重启 Apache:
sudo systemctl restart httpd
配置虚拟主机(按需操作)
如果你需要在同一台服务器上托管多个网站,就需要配置虚拟主机。以 example.com 为例:
sudo vi /etc/httpd/conf.d/example.com.conf
将下面这段内容填入,记得把 example.com 替换为你自己的域名:
ServerAdmin webmaster@example.com
ServerName example.com
ServerAlias www.example.com
DocumentRoot /var/www/example.com/public_html
ErrorLog /var/www/example.com/error.log
CustomLog /var/www/example.com/requests.log combined
AllowOverride All
Require all granted
然后创建网站目录并设置权限:
sudo mkdir -p /var/www/example.com/public_html
sudo chown -R apache:apache /var/www/example.com/public_html
最后重启 Apache 使配置生效:
sudo systemctl restart httpd
第四步:编写与部署 PHP 应用
遵循 PSR 标准
PSR-1、PSR-2、PSR-4 这些编码规范并非摆设,它们能帮助你写出结构一致、易于维护的代码。几点基本要求:
- 类名使用
StudlyCaps(例如UserController) - 方法名使用
camelCase(例如getUserInfo) - 文件扩展名统一使用
.php
用 Composer 管理依赖
Composer 是 PHP 生态中不可或缺的工具,安装第三方库全靠它。先完成安装:
curl -sS https://getcomposer.org/installer | php
sudo mv composer.phar /usr/local/bin/composer
然后创建 composer.json 文件声明依赖。例如要使用 Laravel:
{
"require": {
"lara vel/framework": "^10.0"
}
}
最后运行安装命令:
composer install
采用 MVC 框架
Laravel、Symfony 等 MVC 框架,能够将业务逻辑清晰地拆分为模型、视图、控制器三层,代码复用性和可维护性都会显著提升。例如在 Laravel 中,在 routes/web.php 中定义 URL 与控制器映射:
use App\Http\Controllers\UserController;
Route::get('/users', [UserController::class, 'index']);
安全这根弦不能松
需要特别警惕的是,安全措施不是锦上添花,而是基本的底线。
- 防 SQL 注入:使用预处理语句,不要拼接字符串。
$stmt = $pdo->prepare("SELECT * FROM users WHERE email = ?"); $stmt->execute([$email]); $user = $stmt->fetch(); - 防 XSS 攻击:输出前用
htmlspecialchars转义:echo htmlspecialchars($userInput, ENT_QUOTES, 'UTF-8'); - 防 CSRF 攻击:使用 CSRF 令牌,Laravel 中可以直接用
@csrf指令。
第五步:测试与部署
本地测试
在开发环境中测试应用功能,推荐两种方式:使用 XAMPP、WAMP 这类集成环境,或者直接用 PHP 内置服务器运行:
php -S localhost:8000
部署到生产环境
上线之前,下面这几件事一个都不能少:
- 关闭调试模式(Laravel 中把
APP_DEBUG设为false) - 配置 HTTPS,Let’s Encrypt 的免费证书足够使用
- 设置定时备份,数据库和网站文件都要覆盖
- 使用 Supervisor 管理 PHP 进程,尤其是队列任务
