前置知识准备:

  • 如果还不知道服务器是干什么的,只是刚踏入程序员之路的,大家还是先学习基础,虽然以下文档很简单,但至少知道为什么要学;
  • 一般服务器环境现在基本上都是放在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包并安装,自动处理依赖关系,并一次性安装所有依赖的软件包):

    1. 先查看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和环境准备(一)的更多相关文章

  1. Nginx 小入门记录 之 Nginx 配置文件解读(二)

    上一小节主要是记录一些环境准备和Nginx的安装,接下来对Nginx基本配置进行记录. 查看配置文件安装记录 可以通过以下Linux命令进行查看: rpm -ql nginx rpm 是liunx的包 ...

  2. Nginx(一):初识Nginx

    一.什么是Nginx? Nginx 是异步框架的Web服务器,也可以用作反向代理.负载平衡器和HTTP缓存.选择Nginx的一些优点:可以高并发连接.内存消耗少.成本低廉.配置文件简单.节省带宽.稳定 ...

  3. Nginx快速入门菜鸟笔记

    Nginx快速入门-菜鸟笔记   1.编译安装nginx 编译安装nginx 必须先安装pcre库. (1)uname -a 确定环境 Linux localhost.localdomain 2.6. ...

  4. Nginx 基础入门

    目录 Nginx 基础入门 1.Nginx简介 1.1.相关名词解释 2.Nginx优势 3.Nginx部署 4.Nginx配置文件 5.Nginx模块 6.Nginx配置文件 6.1.Locatio ...

  5. nginx配置入门

    谢谢作者的分享精神,原文地址:http://www.nginx.cn/591.html nginx配置入门 之前的nginx配置是对nginx配置文件的具体含义进行讲解,不过对于nginx的新手可能一 ...

  6. nginx 配置入门

    之前的nginx配置是对nginx配置文件的具体含义进行讲解,不过对于nginx的新手可能一头雾水. 今天看到个文档不错,翻译过来分享给大家,可以让新手更详细地了解nginx配置,可以说是nginx配 ...

  7. 初识nginx——内存池篇

    初识nginx——内存池篇 为了自身使用的方便,Nginx封装了很多有用的数据结构,比如ngx_str_t ,ngx_array_t, ngx_pool_t 等等,对于内存池,nginx设计的十分精炼 ...

  8. 初识nginx——配置解析篇

    一.nginx的介绍 nginx是由俄罗斯人开发的一款高性能的http和反向代理服务器,也可以用来作为邮件代理.相比较于其他的服务器,具有占用内存少,稳定性高等优势 二.nginx的配置 nginx的 ...

  9. nginx的入门到框架设计

    mac上安装nginx 安装与启动 安装 brew install nginx 命令 通过 Homebrew 下载的软件默认位置在 /usr/local/Cellar 应该ln-s 加连接就能全局 n ...

随机推荐

  1. C语言学习系列(三)C程序结构

    一.C程序结构 C 程序主要包括以下部分: 预处理器指令 函数 变量 语句 & 表达式 注释 new C program demo: #include <stdio.h> /*预处 ...

  2. [Python自学] day-22 (1) (Session、CSRF、中间件)

    一.响应函数补充 三种返回响应的方式: return HttpResponse() return render() return redirect() HttpResponse: 除了能够返回字符串, ...

  3. 005_linuxC++之_指针的引入

    (一)直接看代码 #include <iostream> using namespace std; int add(int a){ a = a + ; return a; } int ad ...

  4. fastJson与jackson性能对比

    转载:https://blog.csdn.net/u013433821/article/details/82905222最近项目用到fastJson和jackson,为了决定到底弃用哪个,随手写了个测 ...

  5. 事务日志已满 请参阅sys.databases中的log_reuse_wait_desc列解决办法

    http://www.myexception.cn/sql-server/153219.html http://blog.csdn.net/kedingboy12345/article/details ...

  6. [Luogu] 【模板】点分治1

    // 模板题#include <bits/stdc++.h> ; , head[N], dis[N]; ]; int size[N], maxson[N], Root; bool vis[ ...

  7. Machine Schedule为什么UVA过了POJ过不了

    UVA1194 POJ1325 POJ要多判一个非零!!! #include<cstdio> #include<vector> #include<cstring> ...

  8. mac 安装oh-my-zsh的问题

    安装完,如果想切换回mac原来的bash终端,可以: chsh -s /bin/bash 反之,切换回zsh: chsh -s /bin/zsh

  9. Grafana +Zabbix 系列二

    Grafana +Zabbix 系列二 Grafana 简介补充 Grafana自身并不存储数据,数据从其他地方获取.需要配置数据源 Grafana支持从Zabbix中获取数据 Grafana优化图形 ...

  10. selenium 定制启动chrome的参数

    selenium 定制启动chrome的参数 设置代理. 禁止图片加载 修改ua https://blog.csdn.net/vinson0526/article/details/51850929 1 ...