Nginx安装优化实战(简单,好用)

Nginx优化实战(简单,好用)

Nginx概述

  1. Nginx是什么
    • 是一个高性能的HTTP和反向代理web服务器
    • 因它的稳定性、丰富的功能集、示例配置文件和低系统资源的消耗而闻名
  2. 谁在用
    • 百度、京东、新浪、网易、腾讯、淘宝等。
  3. 反向代理及示意图
    • 反向代理服务器位于用户与目标服务器之间,但是对于用户而言,反向代理服务器就相当于目标服务器,即用户直接访问反向代理服务器就可以获得目标服务器的资源。同时,用户不需要知道目标服务器的地址,也无须在用户端作任何设定。反向代理服务器通常可用来作为Web加速,即使用反向代理作为Web服务器的前置机来降低网络和服务器的负载,提高访问效率.


      在这里插入图片描述

Nginx安装和配置

  1. 下载
    1. 可连接外网:yum install -y nginx
    2. 内网的话需要先下载rpm包,下载地址,自行选择对应的rpm包,rpm -ivh xxxx
  2. 优化配置
    1. 主配置文件(/etc/nginx/nginx.conf)

      user nginx;
      worker_processes 8;
      worker_cpu_affinity 00000001 00000010 00000100 00001000 00010000  00100000 01000000 10000000;
      worker_rlimit_nofile 65535;
      error_log /var/log/nginx/error.log;
      pid /run/nginx.pid;
      include /usr/share/nginx/modules/*.conf;
      
      events { 
          worker_connections 10240;
      	use epoll;
      }
      
      http {
          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  /var/log/nginx/access.log  main;
      	client_header_timeout  3m;
          client_body_timeout    3m;
          send_timeout           3m;
      	server_tokens          off;
      	client_max_body_size   10m;
      	gzip on;
          gzip_min_length        1k;
          gzip_buffers           4 32k;
          gzip_http_version      1.1;
          gzip_comp_level        6;
          gzip_types text/css text/xml application/javascript;
          sendfile            on;
          tcp_nopush          on;
          tcp_nodelay         on;
          keepalive_timeout   65;
          types_hash_max_size 4096;
      	proxy_connect_timeout 90;
          proxy_send_timeout  90;
          proxy_read_timeout  90;
          proxy_buffers 4 32k;
          proxy_busy_buffers_size 64k;	
          include             /etc/nginx/mime.types;
          default_type        application/octet-stream;
          include /etc/nginx/conf.d/*.conf;
      }		
      
    2. 应用配置文件(/etc/nginx/conf.d/xxx.conf)

      server {
      	listen       80;				# 监听端口号
      	server_name  demo.xxxx.com;			# 服务名
      	root /opt/server/dist/xxxx/demo;  		# 根目录
      
      	access_log  /var/log/nginx/access.log;
      	location /prod-api/ {
      		proxy_pass  http://ip:9021/; # 可以调整为负载均衡
      		proxy_redirect     off;
      		proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
      		proxy_set_header Host $http_host;
      		proxy_set_header X-Forwarded-Proto $scheme;
      		proxy_set_header   X-Real-IP        $remote_addr;  
      		client_body_buffer_size    128k;
      		proxy_connect_timeout      70;
      		proxy_send_timeout         90;
      		proxy_read_timeout         90;
      		proxy_buffer_size          4k;
      		proxy_buffers              4 32k;
      		proxy_busy_buffers_size    64k;
      		proxy_temp_file_write_size 64k;
      	}
      
      	error_page  404  /404.html;
      	location = /404.html {
      		root  html;
      	}
      	
      	location / {
      	   add_header Cache-Control private;
      	   add_header Cache-Control max-age=302400;
      	   add_header Cache-Control must-revalidate;
      	   try_files $uri $uri/ @router;
      	   index  index.html index.htm;
      	}
      	
      	location /favicon.ico {
      	   access_log   off;
      	}
      	
      	location @router {
      	  #处理二级路由在页面刷新后报404问题
      	  rewrite ^.+(?<!js|css|png|map)$ /index.html break;
      	}
      	
      	location @router {
      		rewrite ^.*$ /index.html last;
      	}
      	
      	error_page 500 502 503 504 /50x.html;
      	location = /50x.html {
      		root   html;
      	}
      	
      }
      
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值