你真的相识怎样将Nginx设置为Web处事器吗
副问题[/!--empirenews.page--]
抽象来说,将 Nginx 设置为 Web 处事器就是界说处理赏罚哪些 URLS 和如那里理赏罚这些URLS 对应的哀求。详细来说,就是界说一些假造处事器(Virtual Servers),节制具有特定 IP 和域名的哀求。 更详细的来说, Nginx 通过界说一系列 locations 来节制对 URIS 的选择。每一个 location 界说了对映射到本身的哀求的处理赏罚场景:返回一个文件可能署理哀求,可能按照差异的错误代码返回差异的错误页面。其它,按照 URI 的差异,哀求也可以被重定向到其余 server 可能 location 。 配置假造处事器 listen: Nginx 设置文件至少包括一个 server 呼吁 ,用来界说假造处事器。当哀求到来时, Nginx 会起首选择一个假造处事器来处理赏罚该哀求。 假造处事器界说在 http 上下文中的 server 中:
留意: http 中可以界说多个 server server 设置块行使 listen 呼吁监听本机 IP 和端标语(包罗 Unix domain socket and path),支持 IPv4、IPv6,IPv6地点必要用方括号括起来:
上述设置,假如不写端标语,默认行使80端口,假如不写 IP ,则监听本机全部 IP。 server_name: 假如多个 server 的 listen IP 和端标语千篇一律, Nginx 通过哀求头中的 Host 与 server_name 界说的主机名举办较量,来选择吻合的假造处事器处理赏罚哀求:
server_name 的参数可觉得: 1、完备的主机名,如:api.lufficc.com 。 2、含有通配符(含有 *),如:*.lufficc.com 或 api.* 。 3、正则表达式,以 ~ 开头。 通配符只能在开头或末了,并且只能与一个 . 相邻。www.*.example.org 和 w*.example.org均无效。 可是,可以行使正则表达式匹配这些名称,譬喻 ~^www..+.example.org$ 和~^w.*.example.org$ 。 并且 * 可以匹配多个部门。 名称 * .example.org 不只匹配www.example.org,还匹配www.sub.example.org。 对付正则表达式:Nginx 行使的正则表达式与 Perl 编程说话(PCRE)行使的正则表达式兼容。 要行使正则表达式,且必需以 ~ 开头。 定名的正则表达式可以捕捉变量,,然后行使:
小括号 () 之间匹配的内容,也可以在后头通过 $1 来引用,$2 暗示的是前面第二个 () 里的内容。因此上述内容也可写为:
一个 server_name 示例:
同样,假如多个名称匹配 Host 头部, Nginx 回收下列次序选择: 1、完备的主机名,如 api.lufficc.com。 2、最长的,且以 * 开头的通配名,如:*.lufficc.com。 3、最长的,且以 * 末了的通配名,如:api.* 。 4、第一个匹配的正则表达式。(凭证设置文件中的次序) 即优先级:api.lufficc.com > *.lufficc.com > api.* > 正则。 (编辑:河北网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |