centos7 安装lnmp
在当今这个数字化时代,服务器和网站的搭建已经变得越来越重要,无论是个人博客、小型企业网站还是大型电商平台,都离不开稳定高效的服务器支持,而 CentOS 7 作为一个广泛使用的 Linux 发行版,因其稳定性和可靠性,成为了众多服务器管理员的首选,咱们就来唠唠怎么在 CentOS 7 上安装 LNMP(Linux、Nginx、MySQL、PHP),这可是搭建网站的关键一步哦,对于刚入门的小白来说,可能有点复杂,但别担心,跟着我一步一步来,保证让你轻松搞定!

一、为啥要装 LNMP?
1. 性能强劲:LNMP 组合经过了大量实践的检验,在处理高并发请求时表现出色,能确保网站的快速响应,让用户访问起来嗖嗖的,体验感拉满,就像一家餐厅,服务员(Nginx)手脚麻利,厨师(PHP)做饭速度快,食材供应(MySQL)也充足,顾客肯定乐意再来啊。
2. 资源占用少:相比一些其他的服务器软件组合,它对服务器硬件资源的消耗相对较小,这意味着即使你的服务器配置不是特别高,也能流畅运行网站,不至于因为资源不够而卡顿,就好比一辆小排量汽车,虽然动力不是最猛的,但油耗低,日常开起来也不费劲。
3. 高度可定制性:你可以根据自己的需求,灵活地调整 Nginx、MySQL 和 PHP 的各种参数和配置,如果你的网站图片多,就可以优化 Nginx 的图片缓存设置;如果数据库查询频繁,就对 MySQL 进行针对性调优,这就像是装修房子,你可以按照自己的喜好和生活习惯来布置每一个角落。
二、安装前的小准备
1. 系统更新

咱得先把 CentOS 7 系统更新到最新版本,这样能修复一些已知的漏洞和问题,让系统更稳定,就像给房子打地基,基础牢固了,上面的建筑才更安全,打开终端,输入以下命令:
- yum update y
这里的“y”表示自动确认所有提示,省得你一个一个点“是”,看着命令在终端里飞快地执行,是不是感觉有点像魔法师施法,一会儿系统就焕然一新啦?
2. 安装必要的软件包
为了让后续的安装过程顺利进行,我们需要先安装一些依赖软件包,wget(用于从网络下载文件)、gCC(编译器)等,继续在终端输入:
- yum install y wget gcc make
这些软件包就像是盖房子的建筑材料,没有它们,后面的工程可就没法开展咯。
三、安装 Nginx

1. 下载 Nginx
使用 wget 命令从 Nginx 官方网站下载最新的稳定版本源码包,输入:
- wget http://nginx.org/download/nginx<version>.tar.gz
这里的“<version>”要换成实际的 Nginx 版本号,1.20.1,下载的时候,你可以看到终端里显示下载进度条,就像看着快递包裹一步步靠近你,是不是很激动?
2. 解压和编译安装
下载完成后,我们要解压这个压缩包,然后进入解压后的目录进行编译安装,输入:
- tar zxvf nginx<version>.tar.gz
- cd nginx<version>
- ./configure prefix=/usr/local/nginx withhttp_ssl_module withhttp_v2_module
- make
- sudo make install
这一串命令下来,Nginx 就开始在你的系统上扎根生长啦。“prefix”指定了 Nginx 的安装路径,方便我们以后管理和查找相关文件;“withhttp_ssl_module”和“withhttp_v2_module”是开启 SSL 加密和 HTTP/2 协议支持,让网站更安全、传输速度更快,编译的过程可能会有点长,你可以去泡杯茶,回来应该就差不多了。
3. 启动和验证 Nginx
安装完成后,我们就可以启动 Nginx 服务啦,输入:
- sudo /usr/local/nginx/sbin/nginx
在浏览器里输入你的服务器 IP 地址,如果出现 Nginx 的欢迎页面,那就说明安装成功啦!是不是很有成就感?就像看到自己亲手种的树苗开花结果一样开心。
四、安装 MySQL
1. 下载 MySQL
同样用 wget 从 MySQL 官网下载适合 CentOS 7 的 rpm 包,输入:
- wget https://dev.mysql.com/get/mysqlcommunity<version>linuxglibc2.12x86_64.rpm
把“<version>”换成对应的版本号,8.0.26,下载好后,看看文件大小是否正确,别到时候下了个损坏的文件,那可就闹心了。
2. 安装 MySQL
使用 rpm 命令安装下载好的 RPM 包:
- sudo rpm ivh mysqlcommunity<version>linuxglibc2.12x86_64.rpm
安装过程中可能会提示一些依赖关系问题,别慌,根据提示安装相应的依赖包就行,这就好比做饭时发现少了某种调料,赶紧去买来补齐,菜就能顺利出锅了。
3. 初始化和启动 MySQL
安装完成后,需要进行初始化操作,设置 root 用户的密码等,输入:
- sudo bin/mysqld initialize user=mysql basedir=/usr/local/mysql datadir=/usr/local/mysql/data
接着启动 MySQL 服务:
- sudo service mysqld start
我们可以登录 MySQL 进行一些简单的测试,输入:
- mysql u root p
系统会提示你输入密码,输入刚才初始化时设置的密码,就能进入 MySQL 的命令行界面啦,在里面可以创建数据库、表,试试简单的查询语句,感受一下数据库的魅力。
五、安装 PHP
1. 下载 PHP 源码
从 PHP 官方网站下载对应版本的源码包:
- wget https://www.php.net/distributions/php<version>.tar.gz
把“<version>”换成实际想要的版本,7.4.30,下载速度可能会因网络情况而异,耐心等一等哦。
2. 编译安装 PHP
解压源码包并进入目录:
- tar zxvf php<version>.tar.gz
- cd php<version>
然后进行编译配置和安装:
- ./configure prefix=/usr/local/php withconfigfilepath=/usr/local/php enablembstring withmysqli withpdomysql
- make
- sudo make install
这里配置了很多选项,像“enablembstring”是开启对多字节字符串的支持,方便处理各种字符编码;“withmysqli”和“withpdomysql”则是让 PHP 能够连接 MySQL 数据库,编译时间可能较长,可以去活动活动,放松一下。
3. 配置 PHP 与 Nginx 的关联
找到 Nginx 的配置文件(一般在“/usr/local/nginx/conf/nginx.conf”),在“server”块里添加对 PHP 的解释器配置,如下:
- location ~ \.php$ {
- root html;
- index index.php index.html index.htm;
- fastcgi_pass 127.0.0.1:9000; # 这里假设 PHPFPM 监听在 9000 端口
- fastcgi_index index.php;
- fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
- include fastcgi_params;
- }
要确保安装了 PHPFPM(FastCGI Process Manager),并启动它:
- /usr/local/php/sbin/phpfpm
这样,Nginx 收到 PHP 文件请求时,就会交给 PHPFPM 去处理,然后再把处理结果返回给客户端,就像一个接力赛,每个环节都紧密配合。
六、简单测试我们的 LNMP 环境
我们来写一个简单的 PHP 文件,测试一下整个 LNMP 环境是否搭建成功,在 Nginx 的默认网站根目录下(一般是“/usr/share/nginx/html”)创建一个名为“test.php”的文件,内容如下:
- <?php
- phpinfo();
- ?>
保存后,在浏览器里输入“http://你的服务器 IP 地址/test.php”,如果看到 PHP 的详细信息页面,那就说明大功告成啦!我们的 LNMP 环境已经在 CentOS 7 上稳稳地运行起来,就像一台精密的机器,各个部件协同工作,随时准备为网站服务。
七、遇到问题咋解决?
在安装过程中,难免会碰到各种各样的问题,比如说,可能会因为网络问题导致软件包下载失败,这时候可以检查网络连接,或者换个下载源再试试;也可能是依赖关系出错,那就仔细看看错误提示,按照要求安装相应的依赖包,还有可能是配置文件写错了,这就需要对照文档仔细检查语法和参数是否正确,别灰心,每一次解决问题都是一次成长的机会,等你多遇到几次,就会变成服务器安装高手啦!
在 CentOS 7 上安装 LNMP 并不神秘,只要按照步骤一步一步来,耐心细致地处理每一个环节,就能搭建出一个强大稳定的 Web 运行环境,不管是搭建个人博客、小型企业网站还是学习开发平台,LNMP 都能为我们提供有力的支持,希望这篇文章能对你有所帮助,祝你在服务器的世界里玩得开心!