LAMP(Linux, Apache, MySQL, PHP) 是经典的Web应用开发环境,以下是在 CentOS 系统上通过 YUM包管理器 快速安装LAMP环境的详细步骤(适用于CentOS 7/8及以上版本):
在安装前,确保系统软件包为最新状态,避免依赖冲突:
sudo yum update -y
Apache是LAMP架构中的核心Web服务器,负责处理HTTP请求:
# 安装Apache
sudo yum install httpd -y
# 启动Apache服务
sudo systemctl start httpd
# 设置开机自启(确保服务器重启后Apache自动运行)
sudo systemctl enable httpd
# 验证Apache安装:在浏览器输入服务器IP,若看到Apache默认页面则表示成功
MySQL用于存储和管理Web应用的数据(CentOS 8及以上默认使用MariaDB,但可通过YUM安装MySQL Community Server):
# 添加MySQL官方YUM仓库(以MySQL 8.0为例)
sudo yum install https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm -y # CentOS 7
# sudo yum install https://dev.mysql.com/get/mysql80-community-release-el8-1.noarch.rpm -y # CentOS 8
# 更新YUM缓存
sudo yum makecache fast
# 安装MySQL Server
sudo yum install mysql-server -y
# 启动MySQL服务
sudo systemctl start mysqld
# 设置开机自启
sudo systemctl enable mysqld
# 获取临时root密码(安装时自动生成,存储在日志中)
TEMP_PASSWORD=$(sudo grep 'temporary password' /var/log/mysqld.log | awk '{print $NF}')
echo "临时root密码:$TEMP_PASSWORD"
# 运行安全配置脚本(设置root密码、删除匿名用户、禁止root远程登录等)
sudo mysql_secure_installation
# 按提示操作:输入临时密码→设置新密码→删除匿名用户→禁止root远程登录→删除test数据库→重新加载权限表
PHP用于处理动态网页内容,需安装PHP核心及常用扩展(如MySQL驱动、GD库等):
# 安装PHP及常用扩展(包括MySQL支持、GD图像处理、MB字符串等)
sudo yum install php php-cli php-fpm php-mysqlnd php-gd php-mbstring php-curl php-xml -y
# 启动PHP-FPM服务(若使用Apache,需确保mod_php或FastCGI配置正确)
sudo systemctl start php-fpm
# 设置开机自启
sudo systemctl enable php-fpm
# 验证PHP安装:创建测试文件
echo "<?php phpinfo(); ?>" | sudo tee /var/www/html/info.php
# 在浏览器输入服务器IP/info.php,若看到PHP信息页面则表示成功
确保Apache能解析PHP文件,需修改Apache配置文件:
# 编辑Apache主配置文件
sudo vi /etc/httpd/conf/httpd.conf
# 在文件末尾添加以下内容(允许Apache处理.php文件)
<FilesMatch \.php$>
SetHandler "proxy:unix:/run/php-fpm/www.sock|fcgi://localhost"
</FilesMatch>
# 重启Apache使配置生效
sudo systemctl restart httpd
允许HTTP(80端口)和HTTPS(443端口)流量,确保外部能访问Web服务:
# 允许HTTP流量
sudo firewall-cmd --permanent --zone=public --add-service=http
# 允许HTTPS流量
sudo firewall-cmd --permanent --zone=public --add-service=https
# 重新加载防火墙配置
sudo firewall-cmd --reload
通过浏览器访问服务器IP,依次完成以下验证:
http://your_server_ip
:应看到Apache默认页面(说明Apache正常)。http://your_server_ip/info.php
:应看到PHP信息页面(说明PHP正常)。Enforcing
模式,可能导致Apache无法访问PHP文件,可临时设置为Permissive
模式测试:sudo setenforce 0
如需永久修改,编辑 /etc/selinux/config
文件,将SELINUX=enforcing
改为SELINUX=permissive
。info.php
文件(避免泄露服务器信息),并定期更新系统及软件包。