window下nginx的安装使用
来源:互联网 发布:58网络销售招聘可靠吗 编辑:程序博客网 时间:2024/05/22 04:20
原先应用单节点跑着,用户一直抱怨服务响应很慢,为了提升用户体验,想到了试试多节点负载均衡缓解
服务器压力的想法,于是找到nginx的window版本,根据官方文档对参数内容的介绍,设置了相应的参数
。配了一个双节点的WEB应用,终于解决了这个问题。
上图中是我截图的部分访问日志截图,基本上每天产生150M到200多兆的访问日志,因用户反馈比较满意故贴出配置文件供大家参考。
从nginx官网下载相应的安装包解压到相应的目录,我是放c盘 然后修改目录名字为nginx,进入目录 双击nginx.exe,如配置参数则打开conf目录下的nginx.conf做修改(此处是心的核心)。
我的测试和调试后的文件列出如下:
#user nobody;worker_processes 1;#error_log logs/error.log;#error_log logs/error.log notice;#error_log logs/error.log info;#pid logs/nginx.pid;events { worker_connections 10240;}http { include mime.types; default_type application/octet-stream; log_format main '$remote_addr - $remote_user [$time_local] "$request" ' '$status $body_bytes_sent "$http_referer" ' '"$http_user_agent" "$http_x_forwarded_for"'; access_log logs/access.log main; tcp_nopush on; #在一个数据包发送头文件,而不一个接一个的发送。 sendfile on; #立即将数据从磁盘读到OS缓存。 keepalive_timeout 1800; #nginx超时时间 #gzip on; OPEN_FILE_CACHE MAX=102400 INACTIVE=20S; #打开缓存的同时也指定了缓存最大数目,以及缓存的时间。 OPEN_FILE_CACHE_VALID 30S; #在OPEN_FILE_CACHE中指定检测正确信息的间隔时间。 OPEN_FILE_CACHE_MIN_USES 2; #不活动时间期间里最小的文件数。 OPEN_FILE_CACHE_ERRORS ON; #定了当搜索一个文件时是否缓存错误信息 proxy_temp_path C:\\nginx-1.12.0\\temp\\temp_path; #创建缓存的时候可能生成一些临时文件存放的位置 proxy_cache_path C:\\nginx-1.12.0\\temp\\cache_temp levels=1:2 keys_zone=mycache:20m max_size=2048m inactive=60m; #定义缓存存储目录、缓存级别、缓存数据源数据的空间 upstream bakend { ip_hash; server 192.168.3.114:8080; } server { listen 8081; server_name 192.168.3.6; #charset koi8-r; #access_log logs/host.access.log main; location / { #root html; #index index.html index.htm; proxy_pass http://bakend; #代理web服务器 proxy_cache mycache; #内存缓存源数据空间名字对应前面的设定 proxy_cache_valid 200 302 60m; #页面返回码为200 302 的缓存60分 proxy_cache_valid 404 1m; #页面错误响应吗404缓存时间1分proxy_redirect off;proxy_set_header Host $host; #请求未携带“Host”请求头时加上虚拟主机的主域名proxy_set_header X-Real-IP $remote_addr; #在web服务器端获得用户的真实ipproxy_set_header REMOTE-HOST $remote_addr; #在web服务器端获取主机名proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; client_max_body_size 16m; #上传大文件限制16M client_body_buffer_size 256k; #指定连接请求使用的缓冲区大小。 proxy_connect_timeout 75; #设置与nginx的连接超时时间,不能超过75秒。 proxy_send_timeout 600; #发送超时 默认为600秒 proxy_read_timeout 600; #读取超时 默认为600秒 proxy_buffer_size 256k; #后端服务器的相应头会放到proxy_buffer_size当中 proxy_buffers 4 256k; #proxy_buffers的缓冲区以应付大网页。 proxy_busy_buffers_size 256k; proxy_temp_file_write_size 256k; #是一次访问能写入的临时文件的大小 proxy_next_upstream off; #禁用将请求传递到下一个服务器 proxy_max_temp_file_size 128m; #写入硬盘的临时文件的大小 } #error_page 404 /404.html; # redirect server error pages to the static page /50x.html # #error_page 500 502 503 504 /50x.html; #location = /50x.html { # root html; #} # proxy the PHP scripts to Apache listening on 127.0.0.1:80 # #location ~ \.php$ { #} # deny access to .htaccess files, if Apache's document root # concurs with nginx's one # #location ~ /\.ht { # deny all; #} }}
注:大家要按照自己的情况,添加和修改响应的参数,和参数值,切不要直接直接拿来主义用,因为不同场景下NGINX的参数调整得到的用户体验千差万别。
阅读全文