nginx.conf 配置

(1)user nginx nginx

Nginx用户及组,windows下不指定。

(2)worker_processes 8;

工作进程:数目。

(3)erro_log  logs/error.log

error_log logs/error.log notice

error_lo logs/error.log info

错误日志:存放路径。

(4)pid logs/nginx.pid

pid:存放路径 。

(5)worker_rlimit_nofile 204800

指定进程可以打开的最大描述符:数目。

这个指令是指当一个nginx进程打开的最多文件描述数目,理论值应该是最多打开文件数(ulimit -n)与nginx进程数相除,但是nginx分配请求并不是那么均匀,所以最好与ulimit -n 的值保持一致。

(6)events

{

use epoll;

与apache相似,nginx针对不同的操作系统,有不同的事件模型。

 

  • 标准事件模型

select , poll属于标准的事件模型 ,如果当前系统不存在更有效的方法,nginx会选择select和poll。

  •  高效事件模型 

kqueue,适用于BSD。

  •  epoll

使用于Linux内核2.6版本及以后的系统

  •  /dev/poll

solaris, hp, ux

  •  eventport

(7)worker_connections 204800

每个工作进程的最大连接数量

 

(8)keepalive_timeout 60

keepalive超时时间

(9)client_header_buffer_size 4k

客户端请求头部的缓冲区大小。这个可以根据你的系统分页大小来设置,一般一个请求头的大小不会超过1k,所以这里设置为分页大小。分页大小可以用命令getconf PAGESIZE取得。

(10)open_file_cache_max=65535 inactive=60s

这个将为打开文件指定缓存,默认是没有启用的,max指定缓存数量,建议和打开文件数一致,inactive指经过多长时间文件没有被请求后删除缓存。

(11)open_file_cache_valid 80s

这个是指多长时间检查一次缓存的有效信息。

(12)open_file_cache_min_users 1

在inactive参数时间内文件的最少使用次数,如果超过这个数字,文件描述符一直是在缓存中打开的

(13)http{

设定http服务器,利用它的反向代理功能提供负载均衡支持

(14)include mime.types

设定mime 类型

(15)log_format

日志格式 

$remote_addr与$http_x_forwarded_for用以记录客户端ip地址。

$remote_user:用来记录客户端用户名称。

$time_local:用来记录访问时间和时区。

$request:用来记录请求的url与http协议。

$status:用来记录请求状态。

$body_bytes_sent:记录发送给客户端文件内容大小。

$http_referer:用来记录从哪个页面链接 访问过来的。

$http_user_agent:记录客户浏览器的相关信息。

(16)acess_log logs/host.access.log main

用了log_format指令设置了日志格式之后,需要用access_log指令指定日志文件的存放路径 。

(17)server_names_hash_bucket_size 128

(18)client_header_buffer_size 4k

客户端请求头的缓冲区大小,这个可以根据你的系统分页大小来设置 。

(19)large_client_header_buffers 8 128k

如果header过大,使用这个值来读取。

(20)client_max_body_size 300m

设定通过nginx上传文件的大小。

(21)sendfile on

指定nginx是否调用sendfile函数(zero copy方式)来输出文件,对于普通应用,必须设为on。如果用来进行下载等应用磁盘IO重负载应用,可设置为off,以平衡磁盘与网络IO处理速度,降低系统uptime。

(22)tcp_nopush on

是否使用socket的TCP_CORK选项。

(23)proxy_connct_timeout 90

后端服务器连接超时时间

(24)proxy_read_timeout 180

连接成功后,等待后端服务器响应时间

(25)proxy_send_timeout 180

后端服务器数据回传时间

(26)proxy_buffer_size 256k

设置从被处理服务器读取的第一部分应答的缓冲区大小。

(27)proxy_buffers 4 256k

设置用于读取应答的缓冲区数目和大小。

(28)upstream bakend{

server 127.0.0.1:8027

server 127.0.0.1:8028

server 127.0.0.1:8029

hash $request_uri

}

nginx的upstream目前支持4种方式的分配

 

  • 轮询(默认)
  • weight
  • ip_hash
  • fair(第三方):按后端服务器的响应时间来分配请求,响应时间短的优先分配。
  • url_hash

 

(29)配置虚拟机

server

{

listen 80;

配置监听端口

 

server_name image.***.com;

配置访问域名

 

location ~* \.(mp3|exe)$ {

对以“mp3或exe”结尾的地址进行负载均衡

 

proxy_pass http://img_relay$request_uri;

设置被代理服务器的端口或套接字,以及URL

 

proxy_set_header Host $host;

proxy_set_header X-Real-IP $remote_addr;

proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

以上三行,目的是将代理服务器收到的用户的信息传到真实服务器上

}

 

 

最后欢迎大家访问我的个人网站:1024s​​​​​​​

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值