CentOS7手动部署LNMP环境教程

需积分: 1 1 下载量 15 浏览量 更新于2024-08-05 收藏 285KB DOCX 举报
"本教程详述了如何在CentOS 7系统上手动搭建LNMP环境,包括Nginx、MySQL和PHP的安装与配置。" 在CentOS 7上构建LNMP(Linux、Nginx、MySQL和PHP)环境是一个常见的任务,对于想要在Linux服务器上部署Web应用的用户来说至关重要。Nginx是一款高性能的Web服务器,常用于反向代理、负载均衡和静态内容的高效处理。MySQL是流行的开源关系型数据库管理系统,而PHP则是一种广泛使用的服务器端脚本语言,尤其适合Web开发。 在开始之前,确保你的ECS实例已经配置好,包括选择合适的实例规格(如ecs.c6.large)、安装CentOS 7.8 64位操作系统、使用专有网络VPC,并分配了公网IP地址。同时,安全组设置应允许22、80、443端口的入站流量,以便SSH连接、HTTP和HTTPS服务。如果需要远程访问MySQL,还需开放3306端口。 在开始搭建过程前,了解基本的Linux操作是必要的。本教程中提到的软件版本包括Nginx 1.20.1、MySQL 5.7.36和PHP 7.0.33。这些版本可能随着时间的推移而更新,因此在实际操作时请确保使用当前最新的稳定版本。 步骤一:准备编译环境 1. 首先,通过SSH远程连接到你的ECS实例。 2. 关闭防火墙。在CentOS 7中,你可以通过`systemctl status firewalld`检查防火墙状态,然后使用`systemctl stop firewalld`临时关闭,或通过`systemctl disable firewalld`永久禁用。 3. 关闭SELinux。运行`getenforce`查看状态,然后使用`setenforce 0`临时关闭,修改`/etc/selinux/config`文件将`SELINUX`设置为`disabled`来永久关闭。 步骤二:安装依赖和软件 1. 更新系统包:`sudo yum update -y` 2. 安装基础编译工具和依赖:`sudo yum install -y gcc pcre pcre-devel zlib zlib-devel openssl openssl-devel libxml2 libxml2-devel gd gd-devel libjpeg libpng libjpeg-devel libpng-devel freetype freetype-devel libmcrypt libmcrypt-devel libtidy libtidy-devel curl curl-devel libcurl libcurl-devel` 3. 安装Nginx:下载源码,解压,配置,编译,安装。 4. 安装MySQL:同样通过源码编译或使用YUM安装社区版本。 5. 安装PHP:选择需要的扩展,例如`php-mysqlnd`,然后配置、编译、安装。 步骤三:配置与启动服务 1. 配置Nginx的配置文件`/etc/nginx/nginx.conf`,添加虚拟主机配置。 2. 启动Nginx:`systemctl start nginx` 3. 配置MySQL,设置root用户的密码,初始化数据库:`mysql_secure_installation` 4. 启动MySQL:`systemctl start mysqld` 5. 配置PHP-FPM,修改`/etc/php-fpm.d/www.conf`中的用户和组,确保与Nginx用户一致。 6. 启动PHP-FPM:`systemctl start php-fpm` 步骤四:测试与优化 1. 访问Web服务器确认Nginx和PHP工作正常,例如创建一个简单的`index.php`文件并查看结果。 2. 调整Nginx、MySQL和PHP的配置以优化性能和安全性。 3. 设置服务开机自启:`systemctl enable nginx mysqld php-fpm` 完成以上步骤后,你就成功在CentOS 7上搭建了一个基础的LNMP环境。记得定期更新软件以保持安全性和稳定性。此外,还可以考虑使用如PHPMyAdmin这样的管理工具来方便地管理MySQL数据库,或者通过配置SSL证书实现HTTPS加密连接。