Centos7编译安装LNMP架构

本文详细介绍了在Centos7系统中如何编译安装LNMP(Nginx, MySQL, PHP)架构。从LNMP的介绍开始,逐步讲解了Nginx的环境依赖、用户创建、编译安装、配置优化以及启动服务,接着转向MySQL的安装,包括环境依赖、用户创建、编译、初始化数据库和设置密码。最后,文章详述了PHP的编译过程,配置PHP-FPM,以及如何让Nginx支持PHP功能。整个过程旨在帮助读者掌握在Linux环境中手动搭建LNMP架构的方法。" 46508001,1383708,理解Spark的RDD:特性与操作详解,"['大数据开发', 'Spark框架', '分布式计算']

Centos7编译安装LNMP架构

LNMP架构介绍

  • LNMP:Linux系统下Nginx+MySQL+PHP这种网站服务器架构。Nginx是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP代理服务器。Mysql是一个小型关系型数据库管理系统。PHP是一种在服务器端执行的嵌入HTML文档的脚本语言。
  • 原理:浏览器发送http request请求到服务器(Nginx),服务器响应并处理web请求,将一些静态资源(CSS,图片,视频等)保存服务器上,然后将php脚本通过接口传输协议(网关协议)PHP-FCGI(fast-cgi)传输给PHP-FPM(进程管理程序),PHP-FPM不做处理,然后PHP-FPM调用PHP解析器进程,PHP解析器解析php脚本信息。PHP解析器进程可以启动多个,进行并发执行。然后将解析后的脚本返回到PHP-FPM,PHP-FPM再通过fast-cgi的形式将脚本信息传送给Nginx.服务器再通过Http response的形式传送给浏览器。浏览器再进行解析与渲染然后进行呈现。

请添加图片描述

前置准备~

以下所有操作在Root用户上操作,请切换到root用户**
su -
[root@localhost ~]# cat /etc/redhat-release
CentOS Linux release 7.9.2009 (Core)      #Centos版本为7.9

准备:php-7.2.2.tar.gz nginx-1.22.1.tar.gz mysql-boost-5.7.40.tar.gz 文章后面会给出下载wget地址

切换下载源,如果不需要请跳过

yum -y install wget yum-utils epel-release  #下载必要工具
mv  /etc/yum.repos.d/CentOS-Base.repo  /etc/yum.repos.d/CentOS-Base.repo.bak 
#备份原有的源
wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo  
#下载新源

wget -O  /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
#下载新源
yum clean all && yum makecache
#清除原缓存,添加新缓存,提高下载速度。过程可能有点慢,请耐心等待。

#安装必要插件和工具

yum -y install gcc gcc-devel make net-tools screen lrzsz dos2unix lsof tcpdump bash-completion ntp  psmisc  traceroute epel-release bash-completion bash-completion-extras bash-completion setuptool ntsysvsystem-config-securitylevel-tui NetworkManager-tui authconfig-gtk system-config-keyboard bind-utils tree htop wget vim pcre pcre-devel openssl openssl-devel libicu-devel autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel ncurses ncurses-devel curl curl-devel krb5-devel libidn libidn-devel openldap openldap-devel nss_ldap jemalloc-devel cmake boost-devel bison automake libevent libevent-devel gd gd-devel libtool* libmcrypt libmcrypt-devel mcrypt mhash libxslt libxslt-devel readline readline-devel gmp gmp-devel libcurl libcurl-devel openjpeg-devel sqlite-devel expat-devel perl  expat-devel
vim /etc/yum.conf    #因为默认更新会更新内核,在工作环境中是非常危险的行为,所以禁止内核更新

在 /etc/yum.conf 的 [main] 后面添加以下配置
exclude=kernel* 
exclude=centos-release*

yum -y update      

关闭防火墙和seLinux #开启防火墙会阻止服务的端口,所以我们关闭他

systemctl status firewalld      #查看防火墙状态,默认开启

systemctl stop firewalld        #关闭防火墙

systemctl disable firewalld     #禁止开机自启

vim /etc/selinux/config         #找到   SELINUX=      将其修改为 disabled      保存退出

下载好各个软件
我是在家目录下载

#下载nginx
wget https://nginx.org/download/nginx-1.22.1.tar.gz        
#下载mysql
wget https://cdn.mysql.com//Downloads/MySQL-5.7/mysql-boost-5.7.40.tar.gz   
#下载php
wget https://www.php.net/distributions/php-7.2.2.tar.gz     
#如果下载慢就在本地电脑上下载,然后用ftp传过去。

一、Nginx编译安装

1.1 安装Nginx环境依赖包

(环境依赖已经在上面安装了,这里跳过)

1.2 创建运行用户、组

Nginx服务程序默认以nobody身份运行,建议为其创建专门的用户账户,以更精确的控制访问权限,增加灵活性、降低安全风险。

[root@localhost ~]# useradd -M -s /sbin/nologin nginx
#  -M 不要自动建立用户的登入目录
   -s为不创建家目录 
   /sbin/nologin  中的nologin表示禁止该用户登录

1.3 编译安装Nginx

tar -zxvf nginx-1.22.1.tar.gz        #解压ngnix
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值