Linux中LAMP如何部署
导读:Linux环境下LAMP(Linux+Apache+MySQL+PHP)环境部署指南 一、环境准备 操作系统选择:推荐使用Ubuntu(22.04 LTS及以上)、CentOS(7及以上)等稳定发行版,确保系统内核版本支持所需组件。 系统...
Linux环境下LAMP(Linux+Apache+MySQL+PHP)环境部署指南
一、环境准备
- 操作系统选择:推荐使用Ubuntu(22.04 LTS及以上)、CentOS(7及以上)等稳定发行版,确保系统内核版本支持所需组件。
- 系统更新:部署前执行
sudo apt update & & sudo apt upgrade -y(Ubuntu/Debian)或sudo yum update -y(CentOS)更新系统包,修复安全漏洞并保证软件包兼容性。 - 关闭防火墙(可选):若需临时绕过防火墙限制(仅用于测试),可执行
sudo systemctl stop firewalld(CentOS)或sudo ufw disable(Ubuntu);生产环境建议保留防火墙并配置规则。 - 关闭SELinux(可选,仅CentOS):编辑
/etc/selinux/config文件,将SELINUX=enforcing改为SELINUX=disabled,重启系统生效。
二、安装Apache Web服务器
Apache是LAMP架构中的HTTP服务器,负责处理HTTP请求并返回网页内容。
- 安装Apache:
- Ubuntu/Debian:
sudo apt install apache2 -y - CentOS:
sudo yum install httpd -y。
- Ubuntu/Debian:
- 启动与开机自启:
- Ubuntu/Debian:
sudo systemctl start apache2 & & sudo systemctl enable apache2 - CentOS:
sudo systemctl start httpd & & sudo systemctl enable httpd。
- Ubuntu/Debian:
- 验证安装:在浏览器输入
http://服务器IP,若看到Apache默认欢迎页面(如“Apache2 Ubuntu Default Page”),则说明安装成功。
三、安装MySQL数据库
MySQL是LAMP架构中的关系型数据库,用于存储动态网站的数据(如用户信息、文章内容)。
- 安装MySQL:
- Ubuntu/Debian:
sudo apt install mysql-server -y - CentOS:需先添加MySQL Yum Repository(
wget https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm),再执行sudo yum install mysql-community-server -y。
- Ubuntu/Debian:
- 启动与开机自启:
- Ubuntu/Debian:
sudo systemctl start mysqld & & sudo systemctl enable mysqld - CentOS:
sudo systemctl start mysqld & & sudo systemctl enable mysqld。
- Ubuntu/Debian:
- 安全配置:运行
sudo mysql_secure_installation脚本,依次完成以下操作:- 设置root用户密码(初始密码为空,直接回车后按提示设置);
- 移除匿名用户(提升数据库安全性);
- 禁止root远程登录(防止未授权访问);
- 删除测试数据库(避免敏感信息泄露);
- 刷新权限(使配置立即生效)。
四、安装PHP及扩展
PHP是LAMP架构中的脚本语言,用于处理动态网页逻辑(如表单提交、数据库交互)。
- 安装PHP及必要扩展:
- Ubuntu/Debian:
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为常用功能扩展); - CentOS:
sudo yum install php php-mysqlnd php-gd php-curl php-intl -y。
- Ubuntu/Debian:
- 重启Apache:执行
sudo systemctl restart apache2(Ubuntu/Debian)或sudo systemctl restart httpd(CentOS),加载PHP模块。 - 验证PHP安装:
- 创建测试文件:
sudo nano /var/www/html/info.php; - 输入内容:
< ?php phpinfo(); ?>; - 保存退出后,在浏览器访问
http://服务器IP/info.php,若看到PHP信息页面(包含版本、配置项等),则说明PHP安装成功。
- 创建测试文件:
五、配置Apache支持PHP
确保Apache能正确解析PHP文件,需检查以下配置:
- 加载PHP模块:编辑Apache配置文件(Ubuntu/Debian为
/etc/apache2/mods-enabled/php8.x.conf,CentOS为/etc/httpd/conf.modules.d/10-php.conf),确认包含LoadModule php_module modules/libphp8.x.so(版本号根据实际安装的PHP版本调整)。 - 设置PHP文件类型:在配置文件中添加
AddType application/x-httpd-php .php,确保Apache将.php文件识别为PHP脚本。 - 重启Apache:执行
sudo systemctl restart apache2(Ubuntu/Debian)或sudo systemctl restart httpd(CentOS),使配置生效。
六、测试LAMP环境协同工作
- 测试数据库连接:创建
/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端口)流量通过防火墙,确保外部用户能访问网站:
- Ubuntu/Debian:
sudo ufw allow 'Apache Full' & & sudo ufw enable(Apache Full包含80/tcp和443/tcp端口); - CentOS:
sudo firewall-cmd --permanent --add-service=http & & sudo firewall-cmd --permanent --add-service=https & & sudo firewall-cmd --reload。
八、常见问题排查
- 403 Forbidden错误:检查
/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已设置)。 - MySQL连接被拒绝:检查MySQL用户权限(
GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' IDENTIFIED BY '你的密码'; FLUSH PRIVILEGES;),确认防火墙未阻止3306端口(MySQL默认端口)。 - PHP页面显示代码:确认
libapache2-mod-php(Ubuntu/Debian)或php(CentOS)模块已安装,且Apache已重启。
通过以上步骤,即可在Linux系统上成功部署LAMP环境,为动态网站或Web应用程序提供基础支撑。部署完成后,可根据实际需求安装phpMyAdmin(数据库管理工具)、优化Apache/PHP配置(如启用缓存、调整内存限制)等。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: Linux中LAMP如何部署
本文地址: https://pptw.com/jishu/746662.html
