Nginx 小入门记录 之 初识Nginx和环境准备(一)
前置知识准备:
- 如果还不知道服务器是干什么的,只是刚踏入程序员之路的,大家还是先学习基础,虽然以下文档很简单,但至少知道为什么要学;
- 一般服务器环境现在基本上都是放在Linux系统上了,如果对Linux还不熟的,可以先学习Linux入门就行了;
- 如果只是想单纯用Windows下联系的,其实本质和Linux环境是一样的,可以参考完成,这样可以减少Linux的学习了;
前言
Nginx 是当前很火很火的服务器,如果不了解,但至少也听说过,如果没有听说过,那赶紧开始动起来吧,教程很多很多,如下:
1. 菜鸟教程
2. 技术胖教程(挺详细的,还有视频)
3. CSDN博客
好多,好多,一百度就知道啦,我就不一一列出来了
这里把之前看技术胖的教程记录一下,还是那句话,看会了不一定是你的,一定要动手做,随便再记录一下,保证没坏处,这不,我也开始了!!!
官方定义:
Nginx是一款轻量级的HTTP服务器,采用事件驱动的异步非阻塞处理方式框架,这让其具有极好的IO性能,时常用于服务端的反向代理和负载均衡。
很火很火
刚说Nginx比较火,怎么证明?大家都在用,你说火不火; 好吧,通过https://w3techs.com/ (这个网站的结果很有参考意义的)再去看看,到底咋样:
如上图,虽然说排第二吧,看看那比重,甩后面多少条街,不知道。 为什么不是第一, 我去,第一老大哥地位不可撼动呀。 那为什么排第二的还那么火,究竟有什么过人之处:
- 支持海量高并发:采用IO多路复用epoll。官方测试Nginx能够支持5万并发,但经大神们测试,实际并发比官方稍微低那么点(咱们不用斤斤计较);
- 内存消耗少:在主流的服务器中,Nginx目前是内存消息最小的,经大神测试,开启10个Nginx进程消耗150M内存,大家可以有时间可以对比一下;
- 免费试用可以商业化:Nginx为开源软件,免费试用,可用于商业,开源协议是2-clause BSD-like(大家可以自行查阅这个协议看看),这特点,有哪个用户不喜欢;
- 配置文件简单: 配置通俗易懂;
- 做中间件很高效:Nginx做反向代理、负载均衡,方便、简单、高效;
- 其他: 还有很多,大家使用之后慢慢体会吧;
好了,想具体了解,可以去官网逛逛,或者百度一下,开始下一步环境搭建吧
环境准备
三种环境选择
- 自己电脑搭建或找个闲置的电脑或服务器(在自己Windows电脑上也装了一个);
- 阿里云ECS,有学生版的(https://promotion.aliyun.com/ntms/act/campus2018.html),不到10块钱一个月,主要是挺方便的(我享受不了了,不满足学生这个条件);
- 使用虚拟软件,我就是用的这种方式;
由于服务器现在大部分都放在Linux环境,所以以下以Linux环境为前提进行记录。我虚拟机装的系统是CentOS 7.
安装步骤
1. 系统环境及一些工具:
1 2 | yum -y install gcc gcc-c++ autoconf pcre-devel make automake #安装gcc,编译,打包组件 yum -y install wget httpd-tools vim #安装下载工具、编辑工具 |
2.Nginx安装:
进入http://nginx.org/en/download.html查看Nginx版本:
版本说明:
-
- Mainline version : 开发版,一般用于技术研究、学习,不建议用于生产环境;
- Stable version : 稳定版,比较稳定、成熟,经过长时间的验证,所以生产环境都建议用这个版本;
- legacy version :历史版本,根据需要可以下载对应的版本
3. 用Yum进行安装(Yum 是基于RPM的包管理,自动下载RPM包并安装,自动处理依赖关系,并一次性安装所有依赖的软件包):
- 先查看yum源中是否有自己想要对应版本
1 | yum list | grep nginx |
如图,我的电脑是已经配置好了。
2. 如果没有或者不是自己想要的版本,那就添加yum源
A、进入yum仓储目录下
1 | cd /etc/yum .repos.d/ |
B、新建文件 nginx.repo
1 | vim nginx.repo |
C、添加配置内容,官网找对应配置,或者直接找度娘就有了,以下示例中针对各种版本配置,选择适合的一个就行
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | [nginx] name=nginx repo baseurl=http: //nginx .org /packages/centos/ $releasever/$basearch/ gpgcheck=0 enabled=1 [nginx-stable] name=nginx stable repo baseurl=http: //nginx .org /packages/centos/ $releasever/$basearch/ gpgcheck=1 enabled=1 gpgkey=https: //nginx .org /keys/nginx_signing .key [nginx-mainline] name=nginx mainline repo baseurl=http: //nginx .org /packages/mainline/centos/ $releasever/$basearch/ gpgcheck=1 enabled=0 gpgkey=https: //nginx .org /keys/nginx_signing .key |
D、安装
1 | yum install nginx |
E、检查是否安装完成,或查看对应版本
1 | nginx - v |
如果看到Ngnix的版本信息,证明已经安装成功了 。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架