Nginx配置

nginx安装后配置好配置文件即可使用nginx服务。

Nginx的配置文件nginx.conf位于其安装目录的conf目录下。

nginx.conf由多个块组成,最外面的块是main,main包含Events和HTTP,HTTP包含upstream和多个Server,Server又包含多个location:

全局配置参数:

user nobody;

指定Nginx Worker进程运行用户以及用户组,默认由nobody账号运行。

 

worker_processes  1;

worker_processes是个主模块指令,指定了Nginx要开启的进程数。

每个Nginx进程平均耗费10M~12M内存。建议指定和CPU的数量一致即可。

 

error_log  logs/error.log;

error_log是个主模块指令,用来定义全局错误日志文件。日志输出级别有debug、info、notice、warn、

error、crit可供选择,其中,debug输出日志最为最详细,而crit输出日志最少.

 

pid        logs/nginx.pid;

pid是个主模块指令,用来指定进程pid的存储文件位置。

 

events {
worker_connections 1024;
}

worker_connections也是个事件模块指令,用于定义Nginx每个进程的最大连接数,默认是1024。

 

HTTP服务器配置:

http{}块里面的参数说明:

include       mime.types;

nclude是个主模块指令,实现对配置文件所包含的文件的设定,可以减少主配置文件的复杂度。

 

default_type  application/octet-stream;

default_type属于HTTP核心模块指令,这里设定默认类型为二进制流,

也就是当文件类型未定义时使用这种方式。

 

sendfile        on;

sendfile参数用于开启高效文件传输模式。将tcp_nopush和tcp_nodelay两个指令设置为on用于防止网络阻塞;

 

keepalive_timeout  65;

keepalive_timeout设置客户端连接保持活动的超时时间。在超过这个时间之后,服务器会关闭该连接;

 

include /etc/nginx/conf.d/*.conf;

把路径下的配置文件加载进来成为配置文件的一部分;

 

http{}块下的upstream块配置实例(upstream块就是负载均衡):

upstream kwgdsphttp{
server 10.217.3.113:8090 max_fails=2 fail_timeout=30s;
server 10.217.3.117:8090 max_fails=2 fail_timeout=30s;
}

这个模块通过一个简单的调度算法来实现客户端IP到后端服务器的负载均衡;

在上面的设定中,通过upstream指令指定了一个负载均衡器的名称kwgdsphttp。这个名称可以任意指定,

在后面需要的地方直接调用即可。

三种种调度算法:

轮询(默认采用):每个请求按时间顺序逐一分配到不同的后端服务器,如果后端某台服务器宕机,故障系统被自动剔除,使用户访问不受影响;

Weight:指定轮询权值,Weight值越大,分配到的访问机率越高,主要用于后端每个服务器性能不均的情况下;ip_hash:每个请求按访问IP的hash结果分配,这样来自同一个IP的访客固定访问一个后端服务器,有效解决了动态网页存在的session共享问题;

 

upstream cszhi.com{
ip_hash;
server 192.168.8.11:80;
server 192.168.8.12:80 down;
server 192.168.8.13:8009 max_fails=3 fail_timeout=20s;
server 192.168.8.146:8080;
}

可以通过server指令指定后端服务器的IP地址和端口,同时还可以设定每个后端服务器在负载均衡调度中的状态。常用的状态有:

down:表示当前的server暂时不参与负载均衡;

backup:预留的备份机器。当其他所有的非backup机器出现故障或者忙的时候,才会请求backup机器,因此这台机器的压力最轻;

max_fails:允许请求失败的次数,默认为1。当超过最大次数时,返回proxy_next_upstream 模块定义的错误;fail_timeout:在经历了max_fails次失败后,暂停服务的时间。max_fails可以和fail_timeout一起使用。

 

http{}块中的server虚拟机配置:

server {
listen 80;
server_name kwgmb.kwgproperty.com cokwg.kwgproperty.com;

//location

}

listen用于指定虚拟主机的服务端口;

server_name用来指定IP地址或者域名,多个域名之间用空格分开。

 

server{}块中的location URL匹配配置:

URL地址匹配是进行Nginx配置中最灵活的部分。 location支持正则表达式匹配,也支持条件判断匹配,用户可以通过location指令实现Nginx对动、静态网页进行过滤处理。使用location URL匹配配置还可以实现反向代理,用于实现PHP动态解析或者负载负载均衡。location可以解决跨域问题。

location /kwgdspdash/ {
proxy_pass http://10.217.3.113:8011/;
client_max_body_size 100m;
proxy_cookie_path /api /kwgdspdash/;#这里的路径要注意对应关系
}

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值