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

Content-Type属性指定请求和响应的 HTTP 内容类型。如果未指定 ContentType,默认响应的内容类型为 text/html ,默认请求的内容类型为 application/x-www-form-urlencoded 。Content-Type一般只存在于Post方法中,因为Get方法是不含“body”的,它的请求参数都会被编码到url后面,所以在Get方法中加Content-type是无用的。

在 nginx 中有个配置文件 mime.types ,主要是标示 Content-Type 的文件格式。

下面是几个 常见的 Content-Type

application/x-www-form-urlencoded 是常用的表单发包方式,普通的表单提交,或者 js 发包,默认都是通过这种方式,数据被编码为key/value格式发送到服务器。

multipart/form-data 用在 发送文件的POST包

Multipart/form-data的请求头必须包含一个特殊的头信息 : Content-Type , 且其值也必须规定为multipart/form-data , 同时还需要规定一个 内容分割符 即 boundary 用于分割请求体中的多个POST的内容 , 如文件内容和文本内容自然需要分割开来 , 不然接收方就无法正常解析和还原这个文件了。

text/xml 微信用的是这种数据格式发送请求的。XML-RPC(XML Remote Procedure Call)是一种使用 HTTP 作为传输协议,XML 作为编码方式的远程调用规范。

application\json HTTP通信中并不存在所谓的json,而是将string转成json罢了,也就是,application/json可以将它理解为text/plain,普通字符串。

application\xml XML数据格式

MDN Content-Type

理解HTTP之Content-Type

四种常见的POST提交数据方式


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

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

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

发表评论

登录后才能评论

评论列表(0条)

保存