随笔分类 - Nginx
记录关于nginx的使用和优化。
摘要:前言 接到这样一个需求:内网通过IP地址访问某系统,需要使用 https,而且不能有不安全的提示,如下图: 不允许这样的情况存在,这就需要使用 openssl 进行自签解决。 OpenSSL 自签证书 安装 openssl yum install openssl openssl-devel -y m
阅读全文
摘要:nginx 日志默认文件名: access.log error.log 为了方便查询及归档,将日志文件设置为按照日期来分割,配置如下: [root@nginx /usr/local/nginx/conf]#cat location.conf map $time_iso8601 $logdate {
阅读全文
摘要:前言 在一次测试中,为了方便,直接使用了 Yum 安装 nginx ,使用起来也没差,第二天在登录上来的时候,发现 ngx 自动对 日志进行了归档而且打包,如图: 之前为了实现这个功能是通过 shell 脚本 + crond 来做,但是这次只是通过 yum install nginx -y 就实现了
阅读全文
摘要:1. 当访问 https://xxx.com/ccb/xxx/xxx.html 跳转到 https://www.baidu.com 返回 301 重定向。 location /ccb/ { return 301 https://www.baidu.com; proxy_pass http://192
阅读全文
摘要:1. 需求分析 为了在线上环境提供测试分支,规定将某IP转发到测试程序地址。如果是 ngx 直接对外,采用 real_ip 就能够做限制,但是最前端确实一个7层是负载均衡就需要研究一番了。 2. 实践 业务部署在某云上,前端上挂着一个7层的负载均衡,通过查看官方可以通过 X-Forwarded-Fo
阅读全文
摘要:目录- 前言- Nginx 根据域名反向代理- Nginx proxy_pass 关于 '/' 的作用 1. 前言 接到一个需求,通过nginx 代理互联网上某一个页面,刚开始的时候觉得很简单的,直接 proxy_pass 过去就完事了,测试了下还是想太多。具体记录如下。 2. Nginx 根据域名
阅读全文
摘要:一个 post 的请求,直接调接口服务数据正常返回,但是通过 nginx 代理后, 什么都没有返回。 nginx 配置如下: 使用 postman 调用,返回如下: 于是检查日志报错信息,如下: nginx 修改如下: 加入两条: 两条规则缺一不可,都是为了支持后端请求 HTTP1.1 协议。 数据
阅读全文
摘要:目录- 1. 前言- 2. 指令- 3. 原理及总结 1. 前言 关于缓冲,主要是合理设置缓冲区大小,尽量避免缓冲到硬盘 2. 指令 proxy_buffering 说明:proxy_buffering这个参数用来控制是否打开后端响应内容的缓冲区,如果这个设置为off,那么proxy_buffers
阅读全文
摘要:目录 - 1. 前言- 2. 配置示例及指令说明 - 2.1 配置示例 - 2.2 指令 - 2.3 upstream相关变量- 3. 参数配置及测试 - 3.1 max_fails 和 fail_timeout - 3.2 proxy_next_upstream - 3.3 nginx 与后端we
阅读全文
摘要:目录 - 1. 前言- 2. keepalive 介绍- 3. Nginx 与 keepalive 的关系 - 3.1 Nginx - keepalive_timeout - 3.2 Nginx - keepalive_requests - 3.3 Nginx - upstream - keepal
阅读全文
摘要:1. 前言 通过 HttpHeadersModule 模块可以设置HTTP头,但是不能重写已经存在的头,比如可能相对server头进行重写,可以添加其他的头,例如:Cache-Control,设置生存期。注意:只有在响应代码为 200、204、301、302 或 304 时才有效。同样需要注意的是,
阅读全文
摘要:1. 前言 在 Nginx 服务器中,如果想对日志输出进行控制还是很容易的。Nginx 服务器提供了一个 HttpLogModule 模块,可以通过它来设置日志的输出格式。 2. HttpLogModule 模块 2.1 示例 2.2 指令 指令名称:access_log 语法:access_log
阅读全文
摘要:1. 前言 在 Nginx 中与网页压缩相关的模块有两个:一个是 HttpGzipModule,另一个是 HttpGzipStaticModule。前者用于启用在文件传输过程中使用 gzip 压缩,而后者的作用是将一个文件以压缩的方式传递到一个支持压缩功能的客户端之前,首先检查是否已经存在相应的以
阅读全文
摘要:1. 前言 本文针对 Nginx 的三个模块进行配置,并证实各自的功能特点: (1)limit_conn_zone 模块 - 限制同一 IP 地址并发连接数; (2)limit_request 模块 - 限制同一 IP 某段时间的访问量; (3)core 模块提供 - limit_rate 限制同一
阅读全文
摘要:1. 前言 无论是修改 Nginx 版本还是隐藏 Nginx 版本号,都是很简单的操作,对外来说,相对更安全些。 2. 修改 Nginx 版本号 对于修改 Nginx 版本号来说,需要在源码的基础上进行修改,然后再编译使用。操作如下: 修改如下: 修改后,开始编译安装 nginx, 这里不在讲述如何
阅读全文
摘要:Nginx 服务器类型 1. Web服务器 Web服务器用于提供HTTP(包括HTTPS)的访问,例如Nginx、Apache、IIS等。 2. 应用程序服务器 应用程序服务器能够用于应用程序的运行,包括的工作有:客户会话管理、业务逻辑管理、数据操作等。 3. 代理服务器 代理服务器通常是客户端访问
阅读全文
摘要:前言 在学习 Nginx 之前,我们首先有必要搞清楚下面几个问题: 1. Web服务器是怎么工作的? 2. Apache 与 Nginx 有何异同? 3. Nginx 工作模式是怎样的? 下面就围绕这几个问题,进行解释(内容来自网络及个人理解) 常见 Web 服务器服务方式 三种工作模式比较: We
阅读全文
摘要:操作系统:centos7.2 x64tengine:Tengine/2.2.0主机IP: 10.0.0.12 一、安装tengine 1.1 下载源码安装包 1.1.1 源码包pcre-8.40 用于支持正则表达式 1.1.2 源码包zlib-1.2.11 用于支持数据压缩 1.1.3 源码包ope
阅读全文
摘要:nginx上了一个APP提供给用户下载,考虑到带宽占用的问题,决定在nginx上做下载限速处理。 操作系统:Centos6.7 X64 nginx版本:nginx/1.11.3 根据官方文档: 对nginx.conf进行配置: 因为我这里是APP下载业务是定义的一个nginx虚拟主机 启动服务,并进
阅读全文
摘要:问题日志如下: 网络架构图: 这是一个微信公众号的业务,开发部的同学发来了war包,要求部署。部署完成后,发现首页背景图片无法显示,因为这次是版本升级,不存在很大的问题。直接就把问题锁定到图片的尺寸上。 发现图片1.5M 大小,经过压缩再次打包部署。背景图片显示正常。 经过这次事件,作为运维同学必须
阅读全文