Nginx简单配置

Nginx简单配置

#user  nobody;
#设置 Nginx 的 worker 进程数为 1
worker_processes  1;

#error_log  logs/error.log;
#error_log  logs/error.log  notice;
#error_log  logs/error.log  info;
#pid        logs/nginx.pid;

# 每个 worker 进程允许的最大连接数为 1024
events {
    worker_connections  1024;
}
http {
# 自定义main文件格式
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';
	# 包含 mime.types 文件,定义了 MIME 类型与文件扩展名的对应关系
    include       mime.types;
	# 未知文件类型的默认 MIME 类型为 application/octet-stream
    default_type  application/octet-stream;
	# 定义访问日志的位置和格式
    access_log  /usr/local/logs/access.log  main;
	# 开启 sendfile 功能,提高文件传输效率
    sendfile        on;
	# 定义客户端与服务器的 keep-alive 连接超时时间
    keepalive_timeout  65;
	
	# 定义一个 upstream,指定后端服务器地址和端口(下同,可定义多个)
	upstream hhhh {
	# 后端服务器地址和端口(下同,可定义多个)
		server Nginx所在服务ip:后端服务端口
	};

	upstream hhh {
		server Nginx所在服务ip:后端服务端口
	}	

	upstream h {
		server Nginx所在服务ip:后端服务端口
	}

	upstream hh {
		server Nginx所在服务ip:后端服务端口
	}
	
	#hhh配置
    server {
		# 监听端口号,前端发出的请求为http://localhost:0001,就会被拦截,做后续操作
        listen       0001;
		# 对应域名,有域名就写域名,没域名就写0.0.0.0表示所有
        server_name  0.0.0.0;
		# 支持uft-8格式,避免中文乱码
        charset utf-8;
		# 定义访问日志的位置和格式
        access_log   /data/nginx-1.24.0/logs/rizhi.access.log main;
		# 定义失败日志的位置和格式
        error_log   /data/nginx-1.24.0/logs/rizhi.error.log info;
		# 设置与后端服务器建立连接的超时时间。如果在该时间内无法建立连接,则会认为连接超时。
        proxy_connect_timeout 1800;
		# 设置从后端服务器读取响应的超时时间。如果在该时间内没有接收到响应数据,则会认为读取超时。
        proxy_read_timeout 1800;
		# 设置向后端服务器发送请求的超时时间。如果在该时间内无法发送完整的请求,则会认为发送超时。
        proxy_send_timeout 1800;
		# 设置向客户端发送响应的超时时间。如果在该时间内无法发送完整的响应,则会认为发送超时。
        send_timeout 1800;
		# 设置接收客户端请求体的最大大小。如果客户端发送的请求体超过了这个大小,则会返回 413 请求实体过大的错误。
        client_max_body_size 50m; 
		# / 表示拦截所有请求,并且转发到代理地址http://hhh/;
        location / {
			 # 设置代理地址 
             proxy_pass http://hhh/;
			 # 设置请求头中的 Host 字段为当前请求的主机名。这样可以让后端服务器知道客户端请求的实际主机名。
             proxy_set_header Host $host;
			 # 设置请求头中的 X-Real-IP 字段为客户端的真实 IP 地址。这对于后端服务器获取客户端真实 IP 地址很有用,尤其在使用代理服务器时。
             proxy_set_header X-Real-IP $remote_addr;
			 # 设置请求头中的 X-Forwarded-For 字段为客户端 IP 地址列表。这个字段通常用于标识请求经过的代理服务器链,其中包含了客户端的原始 IP 地址和代理服务器的 IP 地址。
             proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        }
    }
	#hhhh配置
	server {
        listen 0000;
        server_name 0.0.0.0;
		charset utf-8;
        access_log   /data/nginx-1.24.0/logs/rizhi3.access.log main;
        error_log   /data/nginx-1.24.0/logs/rizhi3.error.log info;
        proxy_connect_timeout 1800;
        proxy_read_timeout 1800;
        proxy_send_timeout 1800;
        send_timeout 1800;
        client_max_body_size 50m;
        location ^~ /callback/ {
                     proxy_pass http:/hhhh/callback/;
                     proxy_set_header Host $host;
                     proxy_set_header X-Real-IP $remote_addr;
                     proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
                }
        location ^~ /api/ {
             proxy_pass http://hhhh/;
             proxy_set_header Host $host;
             proxy_set_header X-Real-IP $remote_addr;
             proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        }
	}
	
	#hh配置
	server {
        listen 0002;
        server_name 0.0.0.0;
		charset utf-8;
        access_log   /data/nginx-1.24.0/logs/rizhi2.access.log main;
        error_log   /data/nginx-1.24.0/logs/rizhi2.error.log info;
        proxy_connect_timeout 1800;
        proxy_read_timeout 1800;
        proxy_send_timeout 1800;
        send_timeout 1800;
        client_max_body_size 50m;
                
        location ^~ /api/ {  
             proxy_pass http://hh/;
             proxy_set_header Host $host;
             proxy_set_header X-Real-IP $remote_addr;
             proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        }
		location /{  
			root /usr/local/webapps/vue_1.0  # 前端文件放置路径
			index index.html;				 # 设置主页
			try_files $uri $uri/ /index.html # 根据请求url在前端文件中寻找资源,如果没有,则寻找同名目录,如果还是没有,怎跳转到index.html
             
        }
	}
	
	#h配置
	server {
        listen 0003;
        server_name 0.0.0.0;
		charset utf-8;
        access_log   /data/nginx-1.24.0/logs/rizi1.access.log main;
        error_log   /data/nginx-1.24.0/logs/rizi1.error.log info;
        proxy_connect_timeout 1800;
        proxy_read_timeout 1800;
        proxy_send_timeout 1800;
        send_timeout 1800;
        client_max_body_size 50m;
                
        location  / {
             proxy_pass http://h/;
             proxy_set_header Host $host;
             proxy_set_header X-Real-IP $remote_addr;
             proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        }
	}

}

  • 4
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值