PHP 进阶 - 在 Ubuntu 上搭建 LAMP 环境教程
本文将为您提供一个在 Ubuntu 服务器上搭建 LAMP(Linux, Apache, MySQL, PHP)环境的完整指南。通过本文,您将学习如何安装和配置 Apache、MySQL、PHP,并将您的 PHP 项目部署到服务器上。本文适用于 Ubuntu 20.04 及更高版本。
一、系统更新
在开始之前,确保您的系统软件包是最新的。
二、安装 Apache
1. 安装 Apache Web 服务器
2. 启动并设置 Apache 开机自启
3. 验证 Apache 是否正常运行
在浏览器中访问 http://<您的服务器IP>/
,应显示 Apache 默认的欢迎页面。如果无法访问,请检查防火墙设置(后续步骤将涵盖防火墙配置)。
三、安装 MySQL
1. 安装 MySQL 服务器
2. 启动并设置 MySQL 开机自启
3. 验证 MySQL 安装
登录 MySQL 以确认安装成功。
MySQL 默认密码是 root,直接登录即可。
4. 修改初始密码
5. 创建库和表
这里我们用 SQL 语句把项目需要的数据库建好即可。
四、安装 PHP 及必要模块
1. 添加 Ondřej Surý的 PHP PPA(提供最新的 PHP 版本)
2. 安装 PHP 8.3 和相关模块
这里以 8.3 为例,其他版本只需要替换这个版本号。
其中,PHP FastCGI Process Manager,用于与 Apache 配合。
3. 启动并设置 PHP-FPM 开机自启
4. 验证 PHP 安装
预期输出示例:
五、配置 Apache 与 PHP-FPM 集成
1. 启用必要的 Apache 模块
确保启用了proxy
、proxy_fcgi
和rewrite
模块,这对于 PHP-FPM 的集成和 URL 重写非常重要。
2. 配置虚拟主机
创建一个新的 Apache 虚拟主机配置文件,例如dco.conf
。
3. 编写虚拟主机配置
将以下内容粘贴到dco.conf
文件中:
说明:
ServerName
:设置为您的服务器 IP 地址。DocumentRoot
:指向您的 PHP 项目目录。<Directory>
块:允许.htaccess
文件覆盖配置,并授予访问权限。<FilesMatch \.php$>
块:配置 Apache 通过 PHP-FPM 处理 PHP 文件。确保php8.3-fpm.sock
路径正确。
4. 启用虚拟主机并禁用默认配置
启用新创建的虚拟主机:
禁用默认虚拟主机(可选,但推荐以避免配置冲突):
5. 测试 Apache 配置并重新加载
测试配置文件语法是否正确:
预期输出:
这里 warning 不用管,显示 Syntax OK
即可。
重新加载 Apache 服务以应用更改:
六、配置防火墙
确保服务器防火墙允许 HTTP(80)和 HTTPS(443)流量。
1. 安装 UFW(如果尚未安装)
2. 允许 Apache 通过防火墙
3. 启用防火墙
4. 检查防火墙状态
预期输出示例:
七、部署 PHP 项目
1. 创建项目目录
2. 上传项目文件
将您的 PHP 项目文件上传到服务器上的 /var/www/dco
目录。
3. 设置文件权限
确保 Apache 用户(www-data
)对项目文件有适当的读写权限。这里我直接给全权限。
八、创建测试 PHP 文件
为了确认 PHP 是否正常工作,创建一个简单的 info.php
文件进行测试。
添加以下内容:
保存并退出编辑器。
九、测试访问
1. 在浏览器中访问测试文件
打开浏览器,访问以下 URL:
预期结果:
显示 PHP 配置信息页面,包含 PHP 版本、已安装的模块等信息。
2. 删除测试文件(安全性考虑)
测试完成后,建议删除 info.php
文件以防止泄露服务器信息。
十、错误排查
如果按照上述步骤操作后仍然无法解决问题,可以去查看各块的日志:
Apache 错误日志的相关条目
PHP-FPM 错误日志的相关条目
评论