OSI 模型的前三层

  1. 应用层: 每一个应用程序自定义的协议

  2. 表示层: 数据的压缩与解压缩。图片的编码与解码

  3. 会话层: 会话管理(session) 和 网络验证 。包括断点续传和服务器验证用户登录等。比如访问淘宝网页和他的子网页无需重复登录。

nginx 作用

  1. 提供静态网页服务

  2. 提供多个站点,多个域名的网页服务

  3. 提供反向代理功能(结合动态应用程序)

  4. 提供简单下载服务功能(ftp服务)

  5. 用户行为分析(日志功能)

nginx 的工作流程架构

  1. 分为两个 master 进程和 n 个 worker 进程。

  2. master 是管理者,worker 是干活的

  3. master根据配置文件,决定 worker的数量

  4. 当有 client 发送来请求时,worker 之间相互竞争,获胜者与 client 建立连接并响应请求

nginx 的模块

命令 nginx -V 查看nginx中包含哪些模块。比如你要接受 https请求,那么就要安装 https 对应的模块。

nginx 配置

user www-data;      # 用户名称
worker_processes 4; # 和 cpu 个数保持一致,工作进程,对应的是 master 进程
pid /run/nginx.pid;
include /etc/nginx/modules-enabled/*.conf; events {
use epoll; # 选择内核模式
worker_connections 1024; # 每个进程处理的最大连接数
# multi_accept on;
} http { ##
# Basic Settings
## sendfile on; # 打开零拷贝;
tcp_nopush on; # 请求要积累到一定的数量才会发送;
types_hash_max_size 2048;
# server_tokens off; # server_names_hash_bucket_size 64;
# server_name_in_redirect off; include /etc/nginx/mime.types; # 设置文件的传输类型
default_type application/octet-stream; ##
# SSL Settings
## ssl_protocols TLSv1 TLSv1.1 TLSv1.2 TLSv1.3; # Dropping SSLv3, ref: POODLE
ssl_prefer_server_ciphers on; ##
# Logging Settings
## access_log /var/log/nginx/access.log; # 请求日志存放地址
error_log /var/log/nginx/error.log; # 错误日志存放地址 ##
# Gzip Settings
## gzip on; # 开启压缩功能 include /etc/nginx/conf.d/*.conf; # 配置文件
include /etc/nginx/sites-enabled/*; # 静态文件 # server 就相当于是一个服务;
server {
listen 88;
server_name localhost;
location / {
root html;
index index.html index.htm;
}
error_page 500 502 503 504 /50x.html;
location /50x.html {
root html;
}
}
}

nginx 管理命令

nginx             # 启动 nginx
nginx -t # 检车 nginx.conf 语法
nginx -s reload # 从新读取 nginx.conf
nginx -s stop # 快速关机,停止nginx ,相当于 kill -15 nginx
nginx -s quit # 优雅关闭

注意点:

用什么命令启动的,就用什么命令去管理 systemctl 和 nginx -s 这两个命令不要混着用。

nginx 配置静态服务器和虚拟主机

静态文件目录

www
├── w1
│ └── w1.txt
├── w2
│ └── w2.txt
├── w3
│ └── w3.txt
└── w4
└── w4.txt

配置文件目录

conf.d/
├── w1.conf
├── w2.conf
└── w3.conf

根据端口号区分服务

w1的服务

server {
listen 81; # 端口号
server_name localhost; # 虚拟主机路由
root /home/peng/www/w1; # 存放静态文件的路径
index w1.txt; # 主启动文件
}

根据域名区分区分服务

本地域名地址

192.168.50.164    w3.cn
192.168.50.164 w4.cn

nginx 配置

server {
listen 80;
server_name w3.cn;
root /home/peng/www/w3;
index w3.txt;
}

参考资料

https://www.bilibili.com/video/BV1m34y1p7EC?p=5&share_source=copy_web&vd_source=80cf96a12f63a1720dfc645c2eb041c0

https://www.bilibili.com/video/BV1yS4y1N76R?share_source=copy_web&vd_source=80cf96a12f63a1720dfc645c2eb041c0

nginx(一) の 入门解析的更多相关文章

  1. Nginx快速入门菜鸟笔记

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

  2. nginx配置入门

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

  3. nginx 配置入门

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

  4. 轻量级HTTP服务器Nginx(入门与安装篇)

    轻量级HTTP服务器Nginx(入门篇)   文章来源于南非蚂蚁   一.什么是Nginx 相信很多读者都对Apache非常熟悉,与Apache类似,Nginx是一款高性能的HTTP和反向代理服务器软 ...

  5. Nginx 基础入门

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

  6. nginx 域名泛解析

    部分应用场景下要求服务器根据客户输入的二级域名地址自动访问不同的页面,比如一个服务器放置了不同的业务,商城.官网等多个业务,又不想一个个配置server, 网站目录结构入戏: html 网站根目录 m ...

  7. (转)Apache和Nginx运行原理解析

    Apache和Nginx运行原理解析 原文:https://www.server110.com/nginx/201402/6543.html Web服务器 Web服务器也称为WWW(WORLD WID ...

  8. Centos7 nginx的目录结构与nginx主配置文件解析

    一.nginx的目录结构 [root@node nginx_116]# ls client_body_temp  conf  fastcgi_temp  html  logs  proxy_temp ...

  9. nginx进程模型解析

    nginx进程模型解析 概念   master会发送请求给worker,用于处理用户的请求,模型图如下 nginx进程分类   master进程(只有1个)    接受信号传递给worker   wo ...

  10. 一篇文章带你了解轻量级Web服务器——Nginx简单入门

    一篇文章带你了解轻量级Web服务器--Nginx简单入门 Nginx是一款轻量级的Web服务器/反向代理服务器及电子邮件代理服务器 在本篇中我们会简单介绍Nginx的特点,安装,相关指令使用以及配置信 ...

随机推荐

  1. python爬虫学习——文件操作,异常处理

    文件操作 ''' f = open("a.txt","w") #打开一个文件, w模式(写),如果文件不存在就在当前目录下创建 f.write("he ...

  2. JZOJ 5351. 【NOIP2017提高A组模拟9.7】简单无向图

    题目大意 给定 \(n\) 个度数为 \(\in [1,2]\) 之间的点,求能组成多少种简单无向图(可不连通,点与点之间有别) 分析 显然答案只与 \(n1,n2\) 有关 那么 \(dp\)?(我 ...

  3. Os-ByteSec

    Os-ByteSec 目录 Os-ByteSec 1 信息收集 1.1 端口扫描 1.2 后台目录扫描 2 服务漏洞利用 2.1 检测smb服务漏洞 2.2 GetShell 3 提权 3.1 尝试提 ...

  4. 在VSCode中配置代码自动 eslint 格式化 (实测有用)

    一.Eslint Eslint 是用来检测和规范代码格式的工具,应用在工程化项目中,可以保证项目代码格式的一致性和规范性,大大提升了代码的可读性.   二.配置过程 本博客是讲述对一个已经引用 esl ...

  5. cximage总括功能讲解

    CxImage的功能 Constructors  构造函数 Initialization  初始化 File 文件操作,主要是编解码 Generic 图像基本变化 DSP 图像处理操作 Paintin ...

  6. vue2+ts 设计一个扑克牌比大小的游戏

    首先  

  7. 前端回血day24 flex子项伤的CSS属性

    取值 含义 order 可以通过设置order改变某一个flex子项的排序位置.所有flex子项的默认order属性值是0 flex-grow 属性中的grow是扩展的意思,扩展的就是flex子项所占 ...

  8. 数据库多表连接查询中使用group by分组语句,Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggregated column 'XXX' which is not functionally dependent on columns in GROUP BY claus

    需求描述: 要是用两表联合查询,并对查询的结果进行分组:sql如下: 1 SELECT 2 a.`id`, 3 a.`fr_num`, 4 b.`ent_status` 5 FROM 6 `table ...

  9. rocketmq集群配置

    rocketmq 2m-2s-sync部署 1.下载 jdk-8u361-linux-x64.tar.gz rocketmq-all-5.1.0-bin-release.zip #/etc/profi ...

  10. python日志logging配置

    python日志logging配置 为了方便ELK收集日志,将日志打印成json格式 开发过程中,使用json格式不方便排查问题 本文章使用python的logging模块,一步步增加配置,来说明每个 ...