- ubuntu12.04环境下使用kvm ioctl接口实现最简单的虚拟机
- Ubuntu 通过无线网络安装Ubuntu Server启动系统后连接无线网络的方法
- 在Ubuntu上搭建网桥的方法
- ubuntu 虚拟机上网方式及相关配置详解
CFSDN坚持开源创造价值,我们致力于搭建一个资源共享平台,让每一个IT人在这里找到属于你的精彩世界.
这篇CFSDN的博客文章Nginx到底能做什么?由作者收集整理,如果你对这篇文章有兴趣,记得点赞哟.
随着现在软件行业分工的细化,研发同学更关注研发的功能,对一些常见的运维部署不是那么熟悉,例如常常用到的nginx、docker等等.
今天先来看看nginx可以在项目中做些什么?
注意:本文主要讨论nginx在不加载第三方模块的情况下.
nginx目录 。
首先看下nginx安装后的目录(以windows为例),如下图 。
一般只需关注conf文件夹中的nginx.conf文件即可,如果启动有问题,可以去logs文件夹查看相关日志,nginx.exe为启动程序入口.
HTTP服务器 。
Nginx本身也是一个静态资源的服务器,当只有静态资源的时候,就可以使用Nginx来做服务器。如下图 。
启动nginx,根据上图的监听端口,如下 。
listen 80,
server_name localhost,
可以直接访问localhost来访问html/index.html,请求结果如下:
另外nginx可以将静态资源和动态资源分离,如下图 。
因此nginx常常做静态资源服务器或者将动静资源分离.
反向代理 。
反向代理应该是Nginx做的最多的一件事了,什么是反向代理呢?为什么需要反向代理服务器呢?
反向代理(Reverse Proxy)方式是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给internet上请求连接的客户端,此时代理服务器对外就表现为一个反向代理服务器.
简单来说就是真实的服务器不能直接被外部网络访问,所以需要一台代理服务器,而代理服务器能被外部网络访问的同时又跟真实服务器在同一个网络环境,当然也可能是同一台服务器,端口不同而已。如下图:
配置如下:
负载均衡 。
负载均衡也是Nginx常用的一个功能,负载均衡就是将请求分摊到多个操作单元上进行执行,一般来说一个服务通常会有多台实例运行,因此负载均衡是非常常用的.
nginx常用3种负载均衡策略:RR(轮询)、ip_hash(每个请求按访问ip的hash结果分配)、权重,配置如下 。
RR:
ip_hash
权重:
正向代理 。
正向代理,意思是一个位于客户端和原始服务器之间的服务器,常常为了从原始服务器取得内容,客户端需要向代理发送一个请求并指定原始服务器,然后代理服务器向原始服务器转交请求并将获得的内容返回给客户端。常常正向代理是解决的是客户端无法访问外网ip或者默写特定的ip地址而设置的,如下图 。
注意:正向代理,代理的是客户端;反向代理,代理的是服务端。本质不同.
配置如下:
nginx还有很多第三方模块,让其功能更加强大,明天给大家分享下,如何通过nginx和openresty动态封杀异常IP 。
原文地址:https://www.toutiao.com/i6900750781033529860/ 。
最后此篇关于Nginx到底能做什么?的文章就讲到这里了,如果你想了解更多关于Nginx到底能做什么?的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。
这对你们来说可能很简单,但由于我是java新手,所以我想知道实际上什么是 接下来的部分会发生什么? if (args.length > 0) { file = args[0]; } publi
在我的 View Controller 中,我将 UITapGestureRecognizer 添加到 self.view。我在 self.view 之上添加了一个小 View 。当我点击小 View
我今天尝试从 Obj-C 开始并转到 Swift,我正在阅读文档。我试图在 Swift 中创建一个简单的 IBOutlet,但它不断给我这些错误。 View Controller 没有初始化器 req
我正在尝试使用 VIM 完成(字典和当前缓冲区),但我遇到了问题?和 !在方法名称的末尾。我能以某种方式向 vim 解释方法名称(基本上是单词)最后只能有它,而且只有一个,即 method_name
我是一名优秀的程序员,十分优秀!