Nginx中经常需要做各种配置,总结如下: 1.server_name配置 nginx中的server_name指令主要用于配置基于名称虚拟主机,同一个Nginx虚拟主机中,可以绑定多个server_name,各个域名用空格隔开即可.如下: server { listen ; server_name test.com www.test.com; ... ... } 如果server_name有多个,那么通过代码如$_SERVER["SERVER_NAME"]获取的始终将是Nginx s…
客户端发出一个http请求时,nginx收到后会取出header头中的host,与nginx.conf中每个server的server_name进行匹配,以此决定到底由哪一个server块来处理这个请求. server_name与host匹配优先级顺序如下: 能匹配上的情况优先级顺序: 1.完全匹配 2.通配符在前的,如*.xxxx.com 3.在后的,如aaa.bbb.* 4.正则匹配,如~^\.aaaa\.bbb\.com$ 如果都不匹配的情况下,按下面两种方式处理,优先级如下: 1.优先选…
⼀个server块中配置多个站点 server { listen 80; server_name ~^(www.)?(.+)$; index index.php index.html; root /html/$2; } 站点的主⽬录结构: /html/domain.com/html/nginx.org ⼀个server块中为⼀个站点配置多个⼆级域名 server { listen 80; server_name ~^(.+)?.domain.com$; index index.html; if…
看了很多nginx的配置,好像都忽略了ip直接访问web的问题,不利于SEO优化,所以我们希望可以避免直接用IP访问网站,而是域名访问,具体怎么做呢,看下面. 官方文档中提供的方法: If you do not want to process requests with undefined “Host” header lines, you may define a default server that just drops the requests: server { listen 80 de…
Nginx中upstream有以下几种方式: 1.轮询(weight=1) 默认选项,当weight不指定时,各服务器weight相同, 每个请求按时间顺序逐一分配到不同的后端服务器,如果后端服务器down掉,能自动剔除. upstream bakend { server 192.168.1.10; server 192.168.1.11; } 2.weight 指定轮询几率,weight和访问比率成正比,用于后端服务器性能不均的情况. 如果后端服务器down掉,能自动剔除. 比如下面配置,则1…
在开始处理一个http请求时,nginx会取出header头中的host,与nginx.conf中每个server的server_name进行匹配,以此决定到底由哪一个server块来处理这个请求. server_name与host匹配优先级如下: 1.完全匹配 2.通配符在前的,如*.test.com 3.在后的,如www.test.* 4.正则匹配,如~^\.www\.test\.com$ 如果都不匹配 1.优先选择listen配置项后有default或default_server的 2.找…
转自:http://blog.csdn.net/happydream_c/article/details/54943802 一.nginx简介 Nginx (发音为[engine x])专为性能优化而开发,其最知名的优点是它的稳定性和低系统资源消耗,以及对并发连接的高处理能力(单台物理服务器可支持30000-50000个并发连接), 是一个高性能的 HTTP 和反向代理服务器,也是一个IMAP/POP3/SMTP 代理服. 实际使用中,nginx主要:反向代理.负载均衡 二.nginx基本配置与…
1. 前言 nginx有一个最大的功能就是可以实现服务器的负载均衡,本篇博文就利用nginx中的upstream模块来配置一个简单的负载均衡.关于nginx的安装和配置文件可以查阅博文:windows下安装nginx和基本配置,这里不再赘述. 2. 什么是负载均衡 所谓负载均衡,就是nginx可以配置代理多台服务器主机,当前端页面的请求到来时,nginx可以在多台服务器主机中选择一个当前负载压力较小的服务器,然后将该访问请求转发给被选择的服务器,这样就保证了当用户访问前端页面时,后端服务器集群中…
直接贴代码,备份用 server { listen ; server_name abc.com; index index.html index.htm index.php; root /var/www; location ~ \.php$ { include fastcgi_params; fastcgi_pass ; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name…
Nginx中的server_name指令主要用于配置基于名称的虚拟主机,server_name指令在接到请求后的匹配顺序分别为: 1.准确的server_name匹配,例如: server { listen 80; server_name domain.com www.domain.com; ... } 2.以*通配符开始的字符串: server { listen 80; server_name *.domain.com; ... } 3.以*通配符结束的字符串: server { listen…