Linux环境下LAMP(Linux+Apache+MySQL+PHP)环境部署指南
sudo apt update && sudo apt upgrade -y(Ubuntu/Debian)或sudo yum update -y(CentOS)更新系统包,修复安全漏洞并保证软件包兼容性。sudo systemctl stop firewalld(CentOS)或sudo ufw disable(Ubuntu);生产环境建议保留防火墙并配置规则。/etc/selinux/config文件,将SELINUX=enforcing改为SELINUX=disabled,重启系统生效。Apache是LAMP架构中的HTTP服务器,负责处理HTTP请求并返回网页内容。
sudo apt install apache2 -ysudo yum install httpd -y。sudo systemctl start apache2 && sudo systemctl enable apache2sudo systemctl start httpd && sudo systemctl enable httpd。http://服务器IP,若看到Apache默认欢迎页面(如“Apache2 Ubuntu Default Page”),则说明安装成功。MySQL是LAMP架构中的关系型数据库,用于存储动态网站的数据(如用户信息、文章内容)。
sudo apt install mysql-server -ywget https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm),再执行sudo yum install mysql-community-server -y。sudo systemctl start mysqld && sudo systemctl enable mysqldsudo systemctl start mysqld && sudo systemctl enable mysqld。sudo mysql_secure_installation脚本,依次完成以下操作:
PHP是LAMP架构中的脚本语言,用于处理动态网页逻辑(如表单提交、数据库交互)。
sudo apt install php libapache2-mod-php php-mysql php-gd php-curl php-intl -y(libapache2-mod-php为Apache与PHP的连接器,php-mysql为MySQL数据库驱动,php-gd/php-curl为常用功能扩展);sudo yum install php php-mysqlnd php-gd php-curl php-intl -y。sudo systemctl restart apache2(Ubuntu/Debian)或sudo systemctl restart httpd(CentOS),加载PHP模块。sudo nano /var/www/html/info.php;<?php phpinfo(); ?>;http://服务器IP/info.php,若看到PHP信息页面(包含版本、配置项等),则说明PHP安装成功。确保Apache能正确解析PHP文件,需检查以下配置:
/etc/apache2/mods-enabled/php8.x.conf,CentOS为/etc/httpd/conf.modules.d/10-php.conf),确认包含LoadModule php_module modules/libphp8.x.so(版本号根据实际安装的PHP版本调整)。AddType application/x-httpd-php .php,确保Apache将.php文件识别为PHP脚本。sudo systemctl restart apache2(Ubuntu/Debian)或sudo systemctl restart httpd(CentOS),使配置生效。/var/www/html/dbtest.php文件,输入以下内容:<?php
$mysqli = new mysqli('localhost', 'root', '你的MySQL_root密码');
if ($mysqli->connect_error) {
die('连接失败: ' . $mysqli->connect_error);
}
echo '成功连接到MySQL服务器!';
?>
保存后在浏览器访问http://服务器IP/dbtest.php,若显示“成功连接到MySQL服务器!”,则说明PHP与MySQL协同工作正常。允许HTTP(80端口)和HTTPS(443端口)流量通过防火墙,确保外部用户能访问网站:
sudo ufw allow 'Apache Full' && sudo ufw enable(Apache Full包含80/tcp和443/tcp端口);sudo firewall-cmd --permanent --add-service=http && sudo firewall-cmd --permanent --add-service=https && sudo firewall-cmd --reload。/var/www/html目录权限(sudo chown -R www-data:www-data /var/www/html,Ubuntu/Debian;sudo chown -R apache:apache /var/www/html,CentOS)和Apache配置文件中的Directory指令(确保AllowOverride All和Require all granted已设置)。GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' IDENTIFIED BY '你的密码'; FLUSH PRIVILEGES;),确认防火墙未阻止3306端口(MySQL默认端口)。libapache2-mod-php(Ubuntu/Debian)或php(CentOS)模块已安装,且Apache已重启。通过以上步骤,即可在Linux系统上成功部署LAMP环境,为动态网站或Web应用程序提供基础支撑。部署完成后,可根据实际需求安装phpMyAdmin(数据库管理工具)、优化Apache/PHP配置(如启用缓存、调整内存限制)等。