当前位置: 首页 > news >正文

在Centos环境中搭建Nginx环境

一、Nginx概念简介

  Nginx是一个轻量级的高性能HTTP反向代理服务器,同时它也是一个通用类型的代理服务器,支持绝大部分协议,如TCP、UDP、SMTP、HTTPS等。

Nginx-LOGO

Nginx与redis相同,都是基于多路复用模型构建出的产物,因此它与Redis同样具备资源占用少、并发支持高的特点,在理论上单节点的Nginx同时支持5W并发连接,而实际生产环境中,硬件基础到位再结合简单调优后确实能达到该数值。

客户端请求处理流程的对比:

Nginx前后区别

原本客户端是直接请求目标服务器,由目标服务器直接完成请求处理工作,但加入Nginx后,所有的请求会先经过Nginx,再由其进行分发到具体的服务器处理,处理完成后再返回Nginx,最后由Nginx将最终的响应结果返回给客户端。

二、Nginx环境搭建

官网地址:http://nginx.org/

第一步:首先创建Nginx的目录并进入

[root@localhost]# mkdir /soft && mkdir /soft/nginx/
[root@localhost]# cd /soft/nginx/

第二步;下载Nginx的安装包

        可以通过FTP工具上传离线环境包,也可通过wget命令在线获取安装包

[root@localhost]# wget https://nginx.org/download/nginx-1.21.6.tar.gz

 没有wget命令的可通过yum命令安装:

[root@localhost]# yum -y install wget

第三步:解压Nginx的压缩包:

[root@localhost]# tar -xvzf nginx-1.21.6.tar.gz

第四步:下载并安装Nginx所需的依赖库和包:

[root@localhost]# yum install --downloadonly --downloaddir=/soft/nginx/ gcc-c++

 [root@localhost]# yum install --downloadonly --downloaddir=/soft/nginx/ pcre pcre-devel4

[root@localhost]# yum install --downloadonly --downloaddir=/soft/nginx/ zlib zlib-devel

 [root@localhost]# yum install --downloadonly --downloaddir=/soft/nginx/ openssl openssl-devel

 也可以通过yum命令一键下载(推荐上面哪种方式):

[root@localhost]# yum -y install gcc zlib zlib-devel pcre-devel openssl openssl-devel

执行完成后,然后ls查看目录文件,会看一大堆依赖:

 紧接着通过rpm命令依次将依赖包一个个构建,或者通过如下指令一键安装所有依赖包:

[root@localhost]# rpm -ivh --nodeps *.rpm

 第五步:Nginx的配置脚本

        进入解压后的nginx目录,然后执行Nginx的配置脚本,为后续的安装提前配置好环境,默认位于/usr/local/nginx/目录下(可自定义目录):

[root@localhost]# cd nginx-1.21.6
[root@localhost]# ./configure --prefix=/soft/nginx/

 第六步:编译并安装Nginx

[root@localhost]# make && make install

第七步:最后回到前面的/soft/nginx/目录,输入ls即可看见安装nginx完成后生成的文件。  

 第八步:修改安装后生成的conf目录下的nginx.conf配置文件

[root@localhost]# vi conf/nginx.conf
    修改端口号:listen    80;
    修改IP地址:server_name  你当前机器的本地IP(线上配置域名);

第九步:制定配置文件并启动Nginx

[root@localhost]# sbin/nginx -c conf/nginx.conf
[root@localhost]# ps aux | grep nginx

Nginx其他操作命令:

sbin/nginx -t -c conf/nginx.conf # 检测配置文件是否正常
sbin/nginx -s reload -c conf/nginx.conf # 修改配置后平滑重启
sbin/nginx -s quit # 优雅关闭Nginx,会在执行完当前的任务后再退出
sbin/nginx -s stop # 强制终止Nginx,不管当前是否有任务在执行

第十步:开放80端口,并更新防火墙

[root@localhost]# firewall-cmd --zone=public --add-port=80/tcp --permanent

[root@localhost]# firewall-cmd --reload

 [root@localhost]# firewall-cmd --zone=public --list-ports

 第十一步:在Windows/Mac的浏览器中,直接输入刚刚配置的IP地址访问Nginx

http://www.lryc.cn/news/128942.html

相关文章:

  • 20W IP网络吸顶喇叭 POE供电吸顶喇叭
  • React 之 Suspense和lazy
  • Kafka中的 ISR 机制
  • 01 Python 网络爬虫:爬虫技术的核心原理
  • 【Rust】Rust学习 第十四章进一步认识 Cargo 和 Crates.io
  • Android性能优化----执行时间优化
  • 基于Python的微博大数据舆情分析,舆论情感分析可视化系统,可作为Python毕业设计
  • 被迫学习一波Linux命令
  • 字符串变量拼接操作的底层原理
  • Wlan安全——认证与加密方式(WPA/WPA2)
  • Leetcode-每日一题【剑指 Offer 31. 栈的压入、弹出序列】
  • 软件需求-架构师之路(五)
  • Python自带的IDLE有什么用
  • 设计模式之简单工厂模式
  • 从SaaS到RPA,没有真正“完美”的解决方案!
  • miniconda克隆arcpy
  • 一万字关于java数据结构堆的讲解,让你从入门到精通
  • Java集合底层源码剖析-ArrayList和LinkedList
  • 【数据分享】2006-2021年我国城市级别的市政公用设施建设固定资产投资相关指标(30多项指标)
  • 学点Selenium玩点新鲜~,让分布式测试有更多玩法
  • 【SpringBoot学习笔记】04. Thymeleaf模板引擎
  • 【uni-app】 .sync修饰符与$emit(update:xxx)实现数据双向绑定
  • 链表之第二回
  • 【sgDragSize】自定义拖拽修改DIV尺寸组件,适用于窗体大小调整
  • Gson与FastJson详解
  • LeetCode150道面试经典题-- 有效的字母异位词(简单)
  • 前端与人工智能
  • 神经网络基础-神经网络补充概念-14-逻辑回归中损失函数的解释
  • UG NX二次开发(C++)-PK函数创建一条圆弧曲线
  • AndroidStudio中修改打包生成的apk名称