nginx 常用配置记录

nginx 常用配置记录,第1张

例子

以上一些配置为在该server下具有全局性,例如 root ,可在location中重新定义root

当我们想定义多个server监听同一个端口但访问的host不一样时,server_name就派上用场了。nginx会根据HTTP请求的header Host选择nginx配置文件里符合条件的server_name的server配置

匹配顺序如下

所以当我们监听的的端口只有一个server配置的时候,server_name 可以不填

两者作用差不多,区别在于最终映射的地址不同,例:

简单例子,匹配所有请求

一个正则匹配的例子:

一个反向代理的例子:

vue-router、react-router等路由框架要开启history模式可以选择的nginx配置的例子

location的匹配规则和顺序

还有一种特殊匹配类型 @url ,只用于nginx内部跳转,例:

例子:

有常用两种负载均衡支持调度算法,分别是 weight ip_hash 。weight 模式下可以为每个 server 设置weight值,weight值越大,分配到的访问机率越高,ip_hash 为同一个ip的

分配同一个后端服务器,这样我们不用解决session共享问题。

例子:

mime type 和 文件扩展名的对应关系一般放在 mime.types 里,然后 用 include mime.types

mime.types作用:通过文件的扩展名设置了Content-Type,Nginx如果没找到对应文件的扩展名的话,就使用默认的Type,默认Type通用 default_type 定义,比如 default_type application/octet-stream

完整的 mime.types 配置: https://github.com/h5bp/server-configs-nginx/blob/master/mime.types

一个虚拟主机对一个文件配置,放到vhost文件夹下面,然后通过include指令包含进来,这样更便于维护和管理

配置:

参考:

http://tool.oschina.net/apidocs/apidoc?api=nginx-zh

https://www.jianshu.com/p/bed000e1830b

基本的 (优化过的)配置

将修改的唯一文件是Nginx.conf,其中包含Nginx不同模块的所有设置。应该能够在服务器的/etc/nginx目录中找到nginx.conf。

首先,谈论一些全局设置,然后按文件中的模块挨个来,谈一下哪些设置能够让你在大量客户端访问时拥有良好的性能,为什么它们会提高性能。本文的结尾有一个完整的配置文件。

高层的配置

Nginx.conf文件中,Nginx中有少数的几个高级配置在模块部分之上。

user www-data pid /var/run/nginx.pid worker_processes auto worker_rlimit_nofile 100000

user和pid应该按默认设置 - 不会更改这些内容,因为更改与否没有什么不同。

worker_processes 定义了nginx对外提供web服务时的worker进程数。最优值取决于许多因素,包括(但不限于)CPU核的数量、存储数据的硬盘数量及负载模式。不能确定的时候,将其设置为可用的CPU内核数将是一个好的开始(设置为“auto”将尝试自动检测它)。

worker_rlimit_nofile 更改worker进程的最大打开文件数限制。如果没设置的话,这个值为 *** 作系统的限制。设置后的 *** 作系统和Nginx可以处理比“ulimit -a”更多的文件,所以把这个值设高,这样nginx就不会有“too many open files”问题了。

Events模块

events模块中包含Nginx中所有处理连接的设置。

events { worker_connections 2048 multi_accept on use epoll }

worker_connections 设置可由一个worker进程同时打开的最大连接数。如果设置了上面提到的worker_rlimit_nofile,我们可以将这个值设得很高。

记住,最大客户数也由系统的可用socket连接数限制(~ 64K),所以设置不切实际的高没什么好处。

multi_accept 告诉nginx收到一个新连接通知后接受尽可能多的连接。

use 设置用于复用客户端线程的轮询方法。如果你使用Linux 2.6+,应该使用epoll。如果你使用*BSD,你应该使用kqueue。

(值得注意的是如果你不知道Nginx该使用哪种轮询方法的话,它会选择一个最适合你 *** 作系统的)


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/11341580.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-15
下一篇 2023-05-15

发表评论

登录后才能评论

评论列表(0条)

保存