Nginx(二)基础优化配置

全局配置

  • 全局块:全局配置,对全局生效
  • events块:配置影响 Nginx 服务器与用户的网络连接
  • http块:配置代理,缓存,日志定义等绝大多数功能和第三方模块的配置
  • server块:配置虚拟主机的相关参数,一个 http 块中可以有多个 server 块
  • location块:用于配置匹配的 uri
  • upstream:配置后端服务器具体地址,负载均衡配置不可或缺的部分

配置文件详解

全局配置模块

配置文件从头开始到 events 块之间的内容,主要设置的是影响nginx服务器整体运行的配置指令。比如worker_process,值越大,可以支持的并发处理量也越多,但是还是和服务器的硬件相关。

I/O事件配置

HTTP配置

web服务监听设置

优化配置

关闭版本号

Cpu和Work进程绑定

将Nginx工作进程绑定到指定的CPU核心,默认Nginx是不进行进程绑定的,绑定并不是意味着当前nginx进程独占以一核心CPU,但是可以保证此进程不会运行在其他核心上,这就极大减少了nginx的工作进程在不同的cpu核心上的来回跳转,减少了CPU对进程的资源分配与回收以及内存管理等,因此可以有效的提升nginx服务器的性能。

进程优先级

日志分割

平滑升级

alias别名

location

在一个server中location配置段可存在多个,用于实现从uri到文件系统的路径映射;ngnix会根据用户请求的URI来检查定义的所有location,按一定的优化级找出一个最佳匹配,而后应用其配置在没有使用正则表达式的时候,nginx会先在server中的多个location选取匹配度最高的一个uri,uri是用户请求的字符串,即域名后面的web文件路径,然后使用该location模块中的正则url和字符串,如果匹配成功就结束搜索,并使用此location处理此请求。

  • = 用于标准uri前,需要请求字串与uri精确匹配,大小敏感,如果匹配成功就停止向下匹配并立即处理请求
  • ^~ 用于标准uri前,表示包含正则表达式,并且匹配以指定的正则表达式开头,对URI的最左边部分做匹配检查,不区分字符大小写
  • ~ 用于标准uri前,表示包含正则表达式,并且区分大小写
  • ~* 用于标准uri前,表示包含正则表达式,并且不区分大写
  • 不带符号 匹配起始于此uri的所有的uri
  • \ 用于标准uri前,表示包含正则表达式并且转义字符。可以将 . * ?等转义为普通符号

自定义错误页面

我们 可以改变 默认的错误页面,同时也可以用指定的响应状态码进行响应, 可用位置:http, server, location, if in location

相关推荐
沐千熏17 分钟前
Liunx(CentOS-6-x86_64)系统安装MySql(5.6.50)
linux·mysql·centos
荔枝荷包蛋66618 分钟前
【网络】高级IO——Reactor版TCP服务器
运维·服务器
GGGGGGGGGGGGGG.1 小时前
hapxory-ACL基础介绍及案例
运维·服务器·网络
黑牛先生1 小时前
【Linux】匿名管道
linux·运维·服务器
流星白龙1 小时前
【Linux】35.封装 UdpSocket(2)
linux·运维·windows
是码农没错了2 小时前
银河麒麟系统安装mysql5.7【亲测可行】
linux·运维·kylin
wzhao1012 小时前
WSL进阶使用指南
linux
风静如云2 小时前
OpenBMC:BmcWeb app.run
linux
数巨小码人2 小时前
Linux下文件权限与安全
linux
yuanbenshidiaos3 小时前
【进程 】
linux