万隆的笔记 万隆的笔记
博文索引
笔试面试
  • 在线学站

    • 菜鸟教程 (opens new window)
    • 入门教程 (opens new window)
    • Coursera (opens new window)
  • 在线文档

    • w3school (opens new window)
    • Bootstrap (opens new window)
    • Vue (opens new window)
    • 阿里开发者藏经阁 (opens new window)
  • 在线工具

    • tool 工具集 (opens new window)
    • bejson 工具集 (opens new window)
    • 文档转换 (opens new window)
  • 更多在线资源
  • Changlog
  • Aboutme
GitHub (opens new window)
博文索引
笔试面试
  • 在线学站

    • 菜鸟教程 (opens new window)
    • 入门教程 (opens new window)
    • Coursera (opens new window)
  • 在线文档

    • w3school (opens new window)
    • Bootstrap (opens new window)
    • Vue (opens new window)
    • 阿里开发者藏经阁 (opens new window)
  • 在线工具

    • tool 工具集 (opens new window)
    • bejson 工具集 (opens new window)
    • 文档转换 (opens new window)
  • 更多在线资源
  • Changlog
  • Aboutme
GitHub (opens new window)
  • Nginx 简介
    • 应用场景
    • 安装 Nginx
    • Nginx配置文件
  • Nginx 虚拟主机
  • Nginx 反向代理
  • Nginx 负载均衡
  • Nginx
2021-12-03
目录

Nginx 简介

# Nginx 简介

Nginx (opens new window) 是异步框架的网页服务器,也可以用作反向代理、负载平衡器和HTTP缓存。该软件由俄罗斯的程序设计师伊戈尔·赛索耶夫( Igor Sysoev)开发,并于2004年首次公开发布。2011年成立同名公司以提供支持服务。2019年3月11日,Nginx公司被F5网络公司以6.7亿美元收购。

Nginx是免费的开源软件,根据类BSD许可证的条款发布。Nginx的性能很强,官方测试 Nginx 能够支支撑 5 万并发链接,并且 CPU、内存等资源消耗却非常低,运行非常稳定。更多参见官方文档 (opens new window)。

# 应用场景

  • HTTP 服务器:Nginx 是一个 HTTP 服务可以独立提供 HTTP 服务,可以做静态网页服务器。
  • 虚拟主机:可以实现在一台服务器虚拟出多个网站,例如个人网站使用的虚拟主机。
  • 反向代理,负载均衡:当网站的访问量达到一定程度后,单台服务器不能满足用户的请求时,需要用多台服务器集群可以使用 Nginx 做反向代理。并且多台服务器可以均分担负载,不会出现某台服务器负载过高宕机而某台服务器闲置的情况。

# 安装 Nginx

使用Docker安装和运行Nginx,docker-compose.yml配置如下,最新的安装说明可以参考Docker Hub 的文档 (opens new window):

version: '3.1'
services:
  nginx:
    restart: always
    image: nginx:1.21.4
    container_name: nginx
    ports:
      - 81:80
    volumes:
      - ./conf/nginx.conf:/etc/nginx/nginx.conf # 注意这里是挂载了一个文件,看下文处理
      - ./conf.d:/etc/nginx/conf.d # 本地配置文件夹,可以将 http 的 server 配置扔在这里
      - ./wwwroot:/usr/share/nginx/wwwroot # www服务根地址

注意docker不能挂载文件,只能挂载文件夹,所以可以先不挂载数据卷,启动容器然后复制一份配置文件出来:

docker cp nginx:/etc/nginx/nginx.conf /usr/local/docker/nginx/conf/

提示

nginx的版本建议选择 1.11.3 以上的版本,否则可能还要 额外处理 Nginx 的惊群问题(可以理解浪费资源)。

# Nginx配置文件

Nginx通过一个配置文件nginx.conf进行配置,它的配置文件结构为如下,每一个server就是一个虚拟主机的配置。

# ... service config
events {
	# ...
}

http {
	# ...
	server{
		# ...
	}
	
	# ...
	server{
		# ...
	}
}
上次更新: 5/31/2023, 1:14:42 AM
Nginx 虚拟主机

Nginx 虚拟主机→

最近更新
01
2025
01-15
02
Elasticsearch面试题
07-17
03
Elasticsearch进阶
07-16
更多文章>
Theme by Vdoing
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式