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. 系统环境及一些工具:
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源中是否有自己想要对应版本
yum list | grep nginx
如图,我的电脑是已经配置好了。
2. 如果没有或者不是自己想要的版本,那就添加yum源
A、进入yum仓储目录下
cd /etc/yum.repos.d/
B、新建文件 nginx.repo
vim nginx.repo
C、添加配置内容,官网找对应配置,或者直接找度娘就有了,以下示例中针对各种版本配置,选择适合的一个就行
[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、安装
yum install nginx
E、检查是否安装完成,或查看对应版本
nginx -v
如果看到Ngnix的版本信息,证明已经安装成功了 。

Nginx 小入门记录 之 初识Nginx和环境准备(一)的更多相关文章
- Nginx 小入门记录 之 Nginx 配置文件解读(二)
上一小节主要是记录一些环境准备和Nginx的安装,接下来对Nginx基本配置进行记录. 查看配置文件安装记录 可以通过以下Linux命令进行查看: rpm -ql nginx rpm 是liunx的包 ...
- Nginx(一):初识Nginx
一.什么是Nginx? Nginx 是异步框架的Web服务器,也可以用作反向代理.负载平衡器和HTTP缓存.选择Nginx的一些优点:可以高并发连接.内存消耗少.成本低廉.配置文件简单.节省带宽.稳定 ...
- Nginx快速入门菜鸟笔记
Nginx快速入门-菜鸟笔记 1.编译安装nginx 编译安装nginx 必须先安装pcre库. (1)uname -a 确定环境 Linux localhost.localdomain 2.6. ...
- Nginx 基础入门
目录 Nginx 基础入门 1.Nginx简介 1.1.相关名词解释 2.Nginx优势 3.Nginx部署 4.Nginx配置文件 5.Nginx模块 6.Nginx配置文件 6.1.Locatio ...
- nginx配置入门
谢谢作者的分享精神,原文地址:http://www.nginx.cn/591.html nginx配置入门 之前的nginx配置是对nginx配置文件的具体含义进行讲解,不过对于nginx的新手可能一 ...
- nginx 配置入门
之前的nginx配置是对nginx配置文件的具体含义进行讲解,不过对于nginx的新手可能一头雾水. 今天看到个文档不错,翻译过来分享给大家,可以让新手更详细地了解nginx配置,可以说是nginx配 ...
- 初识nginx——内存池篇
初识nginx——内存池篇 为了自身使用的方便,Nginx封装了很多有用的数据结构,比如ngx_str_t ,ngx_array_t, ngx_pool_t 等等,对于内存池,nginx设计的十分精炼 ...
- 初识nginx——配置解析篇
一.nginx的介绍 nginx是由俄罗斯人开发的一款高性能的http和反向代理服务器,也可以用来作为邮件代理.相比较于其他的服务器,具有占用内存少,稳定性高等优势 二.nginx的配置 nginx的 ...
- nginx的入门到框架设计
mac上安装nginx 安装与启动 安装 brew install nginx 命令 通过 Homebrew 下载的软件默认位置在 /usr/local/Cellar 应该ln-s 加连接就能全局 n ...
随机推荐
- 基于steam的游戏销量预测 — PART 3 — 基于BP神经网络的机器学习与预测
语言:c++ 环境:windows 训练内容:根据从steam中爬取的数据经过文本分析制作的向量以及标签 使用相关:无 解释: 就是一个BP神经网络,借鉴参考了一些博客的解释和代码,具体哪些忘了,给出 ...
- 003_FREERTOS任务基础知识
(一)任务状态 FreeRTOS 中的任务永远处于下面几个状态中的某一个: ● 运行态当一个任务正在运行时,那么就说这个任务处于运行态,处于运行态的任务就是当前正在使用处理器的任务.如果使用的是单核处 ...
- 51 Nod 1700 首尾排序法
1700 首尾排序法 有一个长度为n的数组 p1, p2, p3, ⋯, pnp1, p2, p3, ⋯, pn ,里面只包含1到n的整数,且每个数字都不一样.现在要对这个数组进行从小到大排序,排序的 ...
- 【poj2431】驾驶问题-贪心,优先队列
Expedition Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 29360 Accepted: 8135 Descr ...
- jieba中文处理
一:前言 和拉丁语系不同,亚洲语言是不用空格分开每个有意义的词的.而当我们进行自然语言处理的时候,大部分情况下,词汇是我们对句子和文章理解的基础,因此需要一个工具去把完整的文本中分解成粒度更细的词. ...
- POJ 1051 Jury Compromise ——(暴力DP)
题目不难,暴力地dp一下就好,但是不知道我WA在哪里了,对拍了好多的数据都没找出错误= =.估计又是哪里小细节写错了QAQ..思路是用dp[i][j]表示已经选了i个,差值为j的最大和.转移的话暴力枚 ...
- pwn学习日记Day12 《程序员的自我修养》读书笔记
目标文件里有什么 ELF各段 代码段 text 数据段 data bss段 只读数据段 rodata 注释信息段 comment 堆栈提示段 .note.GNU-stack comment 存放编译器 ...
- MATLAB实现模糊控制
一.简介 MATLAB软件有提供一个模糊推理系统编辑器,利用模糊工具箱在matlab命令窗口输入Fuzzy命令进入模糊控制编辑环境 二.主要步骤 1.接受输入变量 2.输入变量模糊化 3.利用模糊规则 ...
- java获取远程图片分辨率
package com.haiyisoft.hyoaPc; import java.awt.image.BufferedImage;import java.io.IOException;import ...
- 转贴:PLSQL中 commit 和 rollback 的区别
PLSQL中 commit 和 rollback 的区别 原文链接:https://blog.csdn.net/jerrytomcat/article/details/82250915 一. comm ...