
Nginx
文章平均质量分 74
Nginx基础
吴声子夜歌
个人学习记录
展开
-
Nginx——限流配置
限流(Rate Limitting)是服务降级的一种方式,通过限制系统的输入和输出流量以达到保护系统的目的。比如我们的网站暴露在公网环境中,除了用户的正常访问,网络爬虫、恶意攻击或者大促等突发流量都可能都会对系统造成压力,如果这种压力超出了服务器的处理能力,会造成响应过慢甚至系统崩溃的问题。因此,当并发请求数过大时,我们通过限制一部分请求(比如限制同一IP的频繁请求)来保证服务器可以正确响应另一部分的请求。nginx 提供了两种限流方式,一种是限制请求速率,一种是限制连接数量。原创 2023-08-04 01:00:20 · 5084 阅读 · 0 评论 -
Nginx——防盗链的配置
防盗链盗链是指有一些不良网站,为了在不增加成本的前提下扩充自己站点的内容,直接盗用其他网站的资源链接,而大部分用户又不会发现。这样的做法一方面损害了原网站的合法利益,另一方面又加重了原网站服务器的流量负担图片防盗链图片是一个网站中最容易被盗取的资源,如何使用Nginx来保护图片不被盗链呢?在讲解之前,首先要了解HTTP请求消息中的一个名称为referer的字段,它用于保存当前网页的来源URL地址。当用户打开一个含有图片内容的网页时,浏览器会在图片的请求消息中将网页的URL放在referer中,从而使图原创 2020-06-13 01:15:48 · 513 阅读 · 0 评论 -
Nginx——重写与重定向
重写与重定向在实际网站运营的过程中,为了能够在修改网站结构或域名后,避免造成网站中的链接或在其他网站中的外链失效,以及提高该网站在搜索引擎的收录量和排名等目的。通常会采用URL重写与重定向,在增强网站专业化的同时,为用户提供更加舒适的使用体验。rewrite模块概述重写与重定向功能是现在大多数Web服务器都支持的一项功能,相对于其他产品而言,Nginx中的rewrite模块提供的功能在配置上更加的灵活自由,可定制性非常的高。它的实现方式也非常的简单,只需要通过rewrite指令根据Nginx提供的全局原创 2020-06-13 00:41:01 · 2129 阅读 · 0 评论 -
Nginx——网页压缩传输
gzip压缩技术gzip(GNU-ZIP)是一种压缩技术,经过gzip压缩后,页面大小可以变为原来的30%甚至更小。这样,用户浏览页面的时候速度会快得多。gzip 网页压缩的实现需要浏览器和服务器的支持,如图:从图可以看出,gzip压缩的过程,首先在服务器端压缩,然后传到浏览器端后解压。当浏览器支持gzip解压时,会在请求消息头中包含Accept-Encoding:gzip,这样Nginx就会向浏览器发送经过gzip后的内容,同时在响应消息头中加人Content-Encoding:gzip,声明这是g原创 2020-06-13 00:07:58 · 1084 阅读 · 1 评论 -
Nginx——缓存配置
缓存配置对于一个含有大量内容的网站来说,随着访问量的增多,对于经常被用户访问的内容,若每一次都要到后端服务器中获取,会给服务器造成很大的压力。为此,利用反向代理服务器对访问频率较多的内容进行缓存,有利于节省后端服务器的资源。Nginx 提供了两种Web缓存方式,一种是永久性缓存,另一种是临时性缓存。缓存实现原理Web缓存服务器位于内容源Web服务器和客户端之间,当客户端用户访问一个URL时,Web缓存服务器就会请求相应的内容源Web服务器,并将响应的信息缓存至内存或磁盘;然后,当下一个请求到来时,如果原创 2020-06-12 22:14:11 · 1086 阅读 · 0 评论 -
Nginx——虚拟主机、设置目录列表、子配置文件引入
虚拟主机虚拟主机技术是指在一台物理主机服务器上划分出多个磁盘空间,每个磁盘空间都是一台虚拟主机,每台虛拟主机都可以独立对外提供Web服务,且互不干扰。在外界看来,虚拟主机就是一台独立的服务器主机,这就意味着用户能够利用虚拟主机把多个不同域名的网站部署在同一台服务器上,而不必再为建立一个网站单独购买一台服务器,既解决了维护服务器技术的难题,同时又极大地节省了服务器硬件成本和相关的维护费用。例如,在一台物理主机服务器(10.20. 30. 40)上划分出多台虚拟主机,同时在每台虚拟主机上部署并运行一个网站,原创 2020-06-12 17:56:32 · 1603 阅读 · 1 评论 -
Nginx——访问日志、错误日志、日志文件切割
访问日志访问日志主要用于记录客户端访问 nginx的每一个请求,格式可通过 log format指令进行自定义,存储路径、缓存大小等可使用 access log指令设置。通过访问日志的配置,可以记录用户IP、访问时间、请求方式、响应状态、地域来源、跳转来源、使用终端等信息。1. 查看默认访问配置:打开Nginx的配置问价nginx.conf,找到log_fromat与access_log指令的默认配置,具体如下:上述第1~3行用于设置访问日志的格式,main表示访问日志格式名称,用户可以自定义。其原创 2020-06-12 13:48:05 · 3942 阅读 · 0 评论 -
Nginx——访问控制
访问控制访问控制是网络安全防范和保护的主要策略,其任务是保证网络资源不被非法访问。Nginx作为Web服务器的后起之秀,也提供了访问控制的功能。它可以根据实际需求,对用户可以访问和禁止的目录进行限制。下面将对Nginx提供的权限控制指令以及典型的应用进行详细讲解。权限控制指令Nginx中提供了两个用于配置访问权限控制的指令,分别为allow和deny。从其名称就可以看出,allow用于设置允许访问的权限deny用于设置禁止访问的权限。在使用时,权限指令后只需跟上允许或禁止的IP、IP段或all即可。其原创 2020-06-12 00:40:29 · 7091 阅读 · 0 评论 -
Nginx——自定义错误页面
配置文件的结构mainevents{...}http{ server{ location{...} }}从上面的结构可以看出,Nginx的默认主配置文件主要由main、events、http、server和location5个块组成,关于各个块的作用,详见表4-1所示。并且对于嵌套块(如http、server、location)中的指令,执行的顺序为从外到内依次执行,内层块中的大部分指令会自动获取外层块指令的值作为默认值,只有某些特殊指令除外。Nginx默认配置文件除去注释如下:原创 2020-06-11 22:43:27 · 4035 阅读 · 0 评论 -
Nginx--动静分离配置
动静分离Nginx动静分离简单来说就是把动态跟静态请求分开,不能理解成只是单纯的把动态页面和静态页面物理分离。严格意义上说应该是动态请求跟静态请求分开,可以理解成使用Nginx处理静态页面,Tomcat处理动态页面。动静分离从实现角度来讲大致分为两种:一种是纯粹把静态文件独立成单独的域名,放在独立的服务器上,也是目前主流推崇的方案;另外一种方法就是动态跟静态文件混合在一起发布,通过Ngin...原创 2020-01-25 22:06:20 · 1110 阅读 · 0 评论 -
Nginx--负载均衡及相关策略
负载均衡增加服务器的数量,然后将请求分发到各个服务器上,将原先请求集中到单个服务器上的情况改为将请求分发到多个服务器上,将负载分发到不同的服务器,也就是我们所说的负载均衡。实现效果:浏览器地址栏输入地址:http:localhost/vod/a.html,负载均衡效果,平均转发到8080和8082准备工作:两台tomcat:tomcat9 8082端口tomcat8 8080端口...原创 2020-01-25 21:12:19 · 330 阅读 · 0 评论 -
Nginx--反向代理配置
反向代理配置实现效果:在浏览器输入www.test.com,跳转到tomcat主页面。配置ip域名映射:原创 2020-01-25 20:29:18 · 401 阅读 · 0 评论 -
Nginx--Mac下安装配置Nginx
安装Homebrewruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" 安装Nginxbrew install nginx验证结果brew services start nginx浏览器访问本机8080端口(默认):查看版本nginx -v...原创 2020-01-25 11:54:17 · 326 阅读 · 0 评论 -
Nginx--Docker环境下安装Nginx与配置挂载
安装Docker拉取Nginx镜像:docker pull nginxdocker images创建挂载目录:mkdir -p /Users/acton_zhang/mydocker/mynginx/{conf,conf.d,html,logs}进入容器并查看配置文件目录结构:docker run -i -t nginx /bin/bashcopy容器里的配置文件到宿...原创 2020-01-24 20:03:24 · 522 阅读 · 0 评论 -
Nginx--配置文件
Nginx配置文件Nginx配置文件的位置:#CentOS/usr/local/nginx/conf/nginx.conf#Docker/etc/nginx配置文件的组成默认的 nginx 配置文件 nginx.conf 内容如下:#user nobody;worker_processes 1;#error_log logs/error.log;#error_...原创 2020-01-24 19:20:09 · 285 阅读 · 0 评论 -
Nginx--常用命令
Nginx常用命令使用Nginx操作命令的前提条件:必须进入Nginx的目录:/usr/local/nginx/sbin/查看Nginx版本号./nginx -v启动Nginx./nginx关闭Nginx./nginx -s stop重新加载./nginx -s reload...原创 2020-01-24 17:34:27 · 240 阅读 · 0 评论 -
Nginx--概述及相关概念
Nginx概述Nginx是一个高性能的HTTP和反向代理服务器,特点是占有内存少,并发能力强,事实上Nginx的并发能力确实在同类型的网页服务器中表现较好。Nginx转为性能优化而开发,性能是其最重要的考量,实现上非常注重效率,能经受高负载的考验,有报告表明能支持高达50000个并发连接数。正向代理正向代理:如果把局域网外的Internet想象成一个巨大的资源库,则局域网中的客户端要访问...原创 2020-01-24 13:13:33 · 4409 阅读 · 0 评论