为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

nginx配置微服务的网关和负载均衡

2023-06-22 5页 doc 36KB 9阅读

用户头像 个人认证

is_856463

暂无简介

举报
nginx配置微服务的网关和负载均衡     nginx配置微服务的网关和负载均衡                  nginx配置微服务的网关和负载均衡利用Nginx配置上游服务器配置位置:[http块]配置upstream:nginx.conf源文件:usernginx;worker_processes1;error_log/var/log/nginx/error.logwarn;pid/var/run/nginx.pid;events{worker_connections1024;}http{include/etc/nginx/mime.types;def...
nginx配置微服务的网关和负载均衡
     nginx配置微服务的网关和负载均衡                  nginx配置微服务的网关和负载均衡利用Nginx配置上游服务器配置位置:[http块]配置upstream:nginx.conf源文件:usernginx;worker_processes1;error_log/var/log/nginx/error.logwarn;pid/var/run/nginx.pid;events{worker_connections1024;}http{include/etc/nginx/mime.types;default_typeapplication/octet-stream;log_formatmain'$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.logmain;sendfileon;#tcp_nopushon;keepalive_timeout65;#gzipon;include/etc/nginx/conf.d/*.conf;}拿出http块代码:http{include/etc/nginx/mime.types;default_typeapplication/octet-stream;log_formatmain'$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.logmain;sendfileon;#tcp_nopushon;keepalive_timeout65;#gzipon;######配置聚焦看这里##上游服务器组整个组起名字servernameupstreamservername{##每个服务器试用server标签写上服务地址##微服务网关gateway的访问这里不要写http直接ip:portserver192.168.31.173:88;}include/etc/nginx/conf.d/*.conf;}修改server块反向配置(负载均衡):server块代码:server{listen80;server_namegulimall1.com*.gulimall1.com;#charsetkoi8-r;#access_log/var/log/nginx/log/host.access.logmain;#######修改聚焦看这里location/{###上游服务器组整个组起名字servernameproxy_passhttp://servername;}#error_page404/404.html;#redirectservererrorpagestothestaticpage/50x.html#error_page500502503504/50x.html;location=/50x.html{root/usr/share/nginx/html;}#proxythePHPscriptstoApachelisteningon127.0.0.1:80##location~\.php${#proxy_passhttp://127.0.0.1;#}#passthePHPscriptstoFastCGIserverlisteningon127.0.0.1:9000##location~\.php${#roothtml;#fastcgi_pass127.0.0.1:9000;#fastcgi_indexindex.php;#fastcgi_paramSCRIPT_FILENAME/scripts$fastcgi_script_name;#includefastcgi_params;#}#denyaccessto.htaccessfiles,ifApache'sdocumentroot#concurswithnginx'sone##location~/\.ht{#denyall;#}}备注:server_namegulimall1.com*.gulimall1.com;反向代理多个域名写法与server对应的gateway网关的配置路由配置文件application.yml:##增加gateway的路由规则**.xxx.com任意子域名定向访问值nacos的nacosServerName服务-id:host_routeuri:lb://nacosServerNamepredicates:-Host=**.xxx.com,xxx.com断言规则:复杂的靠前写,简单的往后写。放置覆盖坑点:接口通讯而页面没有成功。至此api接口可以通讯!但是页面不能正常访问。[server块]配置nginx代理转发至网关的时候会丢失请求的host信息(域名)proxy_set_headerHost$host。而gateway的断言规则predicates:-Host=**.xxx.com,xxx.com是基于域名,导致gateway网关路由分发失败。api的断言规则正常。所以,api接口正常,页面木有打开。中心作用点:gateway的路由断言规则修改补充server的location反向代理配置:#######修改聚焦看这里location/{#######方向代理转发网关时补充头信息###补充转发是header的host信息后续缺少什么这里补充proxy_set_headerHost$host;###上游服务器组整个组起名字servernameproxy_passhttp://servername;}持此配置完成!修改后的nginx.confusernginx;worker_processes1;error_log/var/log/nginx/error.logwarn;pid/var/run/nginx.pid;events{worker_connections1024;}http{include/etc/nginx/mime.types;default_typeapplication/octet-stream;log_formatmain'$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.logmain;sendfileon;#tcp_nopushon;keepalive_timeout65;#gzipon;######配置聚焦看这里##上游服务器组整个组起名字servernameupstreamservername{##每个服务器试用server标签写上服务地址##微服务网关gateway的访问server192.168.31.173:88;}include/etc/nginx/conf.d/*.conf;}修改后的server.confserver{listen80;server_namexxx.com;#charsetkoi8-r;#access_log/var/log/nginx/log/host.access.logmain;#######修改聚焦看这里location/{#######方向代理转发网关时补充头信息###补充转发是header的host信息后续缺少什么这里补充proxy_set_headerHost$host##上游服务器组整个组起名字servernameproxy_passhttp://servername;}#error_page404/404.html;#redirectservererrorpagestothestaticpage/50x.html#error_page500502503504/50x.html;location=/50x.html{root/usr/share/nginx/html;}#proxythePHPscriptstoApachelisteningon127.0.0.1:80##location~\.php${#proxy_passhttp://127.0.0.1;#}#passthePHPscriptstoFastCGIserverlisteningon127.0.0.1:9000##location~\.php${#roothtml;#fastcgi_pass127.0.0.1:9000;#fastcgi_indexindex.php;#fastcgi_paramSCRIPT_FILENAME/scripts$fastcgi_script_name;#includefastcgi_params;#}#denyaccessto.htaccessfiles,ifApache'sdocumentroot#concurswithnginx'sone##location~/\.ht{#denyall;#}}修改后的gateway断言规则application.ymlspring:cloud:gateway:globalcors:corsConfigurations:'[/**]':allowedOrigins:"*"routes:##接口的断言规则-id:product_routeuri:lb://nacosServerNamepredicates:-Path=/api/product/**filters:-RewritePath=/api/(?.*),/$\{segment}##页面的断言规则##增加gateway的路由规则**.xxx.com任意子域名定向访问值nacos的nacosServerName服务-id:gulimall_host_routeuri:lb://nacosServerNamepredicates:-Host=**.xxx.com,xxx.com -全文完-
/
本文档为【nginx配置微服务的网关和负载均衡】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索