当前位置: 首页 > news >正文

品牌seo是什么意思88个seo网站优化基础知识点

品牌seo是什么意思,88个seo网站优化基础知识点,设计类专业学校,公众号修改wordpress作用 身份认证:用户能不能访问 服务路由:用户访问到那个服务中去 负载均衡:一个服务可能有多个实例,甚至集群,负载均衡就是你的请求到哪一个实例上去 请求限流功能:对请求进行流量限制,对服务…

作用

身份认证:用户能不能访问

服务路由:用户访问到那个服务中去

负载均衡:一个服务可能有多个实例,甚至集群,负载均衡就是你的请求到哪一个实例上去

在这里插入图片描述
·请求限流功能:对请求进行流量限制,对服务进行请求限制

两种网关实现:

在这里插入图片描述

搭建网关

在这里插入图片描述

流程

1.首先咱们先将服务以及网关注册到Nacos注册中心;
2.然后用户请求,网关路由进行判断地址是不是以/user或者/order开头的,如果是,则跳转路由目标地址uri,然后请求地址则会代理到userservice或者是orderservice,
3.然后再从Nacos注册中心里根据服务orderservice或者是xxxservice找到对应的地址,
4.最后根据负载均衡找到实例

在这里插入图片描述
1.创建gateway网关模块

2.导入nacos服务发现依赖和gateway依赖,说明是个网关

3.然后进行配置文件的配置,配置服务的信息以及地址将其注册到Nacos中。还有路由的信息(1.路由标示2.目标地址3.路由断言)

server:port: 10010
spring:application:name: gatewaycloud:nacos:server-addr: localhost:80  #nacos地址  (因为我在上一章中还是使用的nacos集群启动 Nginx反向代理的 端口是80  正常的话是8848 )gateway:routes:- id: user-service # 路由标示,必须唯一uri: lb://userservice # 路由的目标地址predicates: # 路由断言,判断请求是否符合规则- Path=/user/** # 路径断言,判断路径是否以/user开头,如果是则符合,跳转路由- id: order-serviceuri: lb://orderservicepredicates:- Path=/order/**

在这里插入图片描述
然后我们访问10010端口,断言predicate设置的path路径正确即可访问
在这里插入图片描述

路由断言

Predicate作用:将断言规则解析成条件作为请求过来的判断

在这里插入图片描述
在这里插入图片描述

server:port: 10010
spring:application:name: gatewaycloud:nacos:server-addr: localhost:8848 #nacos地址gateway:routes:- id: user-service # 路由标示,必须唯一uri: lb://userservice # 路由的目标地址predicates: # 路由断言,判断请求是否符合规则- Path=/user/** # 路径断言,判断路径是否以/user开头,如果是则符合,跳转路由- id: order-serviceuri: lb://orderservicepredicates:- Path=/order/**- After=2022-05-14T15:14:47.433+08:00[Asia/Shanghai] # (这个时间点之后的才能访问)

Gateway中的路由过滤器配置

在这里插入图片描述
过滤器可以对于请求进行过滤:比如请求头请求体请求参数…
也可以对响应进行过滤,给到用户服务想给的内容

在这里插入图片描述

过滤器案例 :加请求头

1.我们直接在配置文件中进行配置即可:

第一种:在路由中配置(这是一个服务的范围,对于访问这个服务会有过滤)

第二种:与routes范围一样,是对于整个全局的,所有服务;

 gateway:routes:- id: user-service # 路由标示,必须唯一uri: lb://userservice # 路由的目标地址predicates: # 路由断言,判断请求是否符合规则- Path=/user/** # 路径断言,判断路径是否以/user开头,如果是则符合,跳转路由- id: order-serviceuri: lb://orderservicepredicates:- Path=/order/**filters: # 过滤器添加一个请求头- AddRequestHeader=Truth,Itcast is freaking aowsome!default-filters: # 对所有路由生效- AddRequestHeader=Truth,Itcast is freaking awesome!

这里我们对用户服务增加一个请求头信息,访问localhost:10010/user/1,服务器就会打印过滤器中的信息

  @GetMapping("/{id}")public User queryById(@PathVariable("id") Long id,@RequestHeader(value="Truth",required = false) String truth) {System.out.println("truth:"+truth);return userService.queryById(id);}

结果:
在这里插入图片描述

全局过滤器

作用:处理一切进入网关的请求和微服务的响应,与GatewayFilter的作用一样

与GatewayFilter区别:前者通过自定义配置可以处理逻辑,后者的逻辑需要自己写代码实现;

在这里插入图片描述

案例:定义全局过滤器,拦截用户判断身份

在这里插入图片描述

步骤:

我们直接定义一个全局过滤器即可,实现GlobalFilter

package cn.itcast.gateway;import org.springframework.cloud.gateway.filter.GatewayFilterChain;
import org.springframework.cloud.gateway.filter.GlobalFilter;
import org.springframework.core.annotation.Order;
import org.springframework.http.HttpStatus;
import org.springframework.http.server.reactive.ServerHttpRequest;
import org.springframework.stereotype.Component;
import org.springframework.util.MultiValueMap;
import org.springframework.web.server.ServerWebExchange;
import reactor.core.publisher.Mono;/*** @author diao 2022/5/9*/
@Order(-1)
@Component
public class AuthorizeFilter implements GlobalFilter {/**** @param exchange:里面有request和response* @param chain:过滤器链* @return*/@Overridepublic Mono<Void> filter(ServerWebExchange exchange, GatewayFilterChain chain) {ServerHttpRequest request = exchange.getRequest();//1.得到request中的所有参数MultiValueMap<String, String> params = request.getQueryParams();//2.获取里面含有authorization的参数String auth = params.getFirst("authorization");//3.判断参数是否符合:authorization==adminif("admin".equals(auth)){return chain.filter(exchange);}//4.进行拦截,并且设置响应状态码exchange.getResponse().setStatusCode(HttpStatus.UNAUTHORIZED);return exchange.getResponse().setComplete();}
}

当request请求参数authorization!=admin,被拦截的情况

在这里插入图片描述
当加上请求参数,并且值符合
在这里插入图片描述
总结:

跟Gateway过滤器最大的区别就是,它可以自定义

在这里插入图片描述

过滤器执行顺序

在这里插入图片描述
可以发现GlobalFilter和DefaultFilter、当前路由器是同一种

在这里插入图片描述

执行顺序注意事项:

1.order值越小优先级越高,优先看order值

2.当order值一样时,顺序好似defaultFilter优先,因为它是排在路由routes

在这里插入图片描述

跨域请求处理

跨域:域名不一致

端口不一致:8080与8081

跨域问题:浏览器禁止请求的发起者与服务端发生跨域的ajax请求,请求被浏览器拦截的问题——>像我们之前的订单服务调用用户服务就不属于跨域问题;

CORS方案:

模板:

  globalcors: # 全局的跨域处理add-to-simple-url-handler-mapping: true # 网关放行请求cors-configurations:'[/**]':allowedOrigins: # 允许哪些网站跨域请求- "http://localhost:8090"- "http://www.leyou.com"allowedMethods: #运行跨域ajax的请求方式- "GET"- "POST"- "DELETE"- "PUT"allowedHeaders: "*" #允许在请求中有头信息allowCredentials: true # 是否允许携带cookiemaxAge: 3600

在这里插入图片描述

对比于寻常的nginx,除了负载均衡之外,我们的gateway可以对异常进行统一处理,包括权限设置,跨域等等; 主要是通过nacos中拉去服务,通过服务名称进行拉取

在这里插入图片描述
在这里插入图片描述

http://www.zhongyajixie.com/news/15079.html

相关文章:

  • 什么网站做免费广告最有效果刷百度指数
  • 江苏个人网站备案要求肇庆seo排名外包
  • 重庆做网站建设公司建立网站的主要步骤
  • 网站推广有哪些常用的方法网站友链
  • 太仓做网站公司学生网页制作成品
  • 网站可以几个服务器软文世界官网
  • 鄂州门户网站百度站长平台网站收录
  • 导航网站建设南昌seo专业团队
  • 网上做翻译兼职网站seo建站营销
  • ppt模板网站排行seo百度关键词优化软件
  • 中小型网站建设与管理免费推广产品平台有哪些
  • 电商分销平台有哪些上海百网优seo优化公司
  • 米各庄网站建设黑帽seo之搜索引擎
  • 一台服务器一个固定ip怎样做两个网站合肥百度搜索优化
  • 手机派网站磁力岛引擎
  • 做视频有赚钱的网站有哪些百度快速收录提交工具
  • wordpress内插件翻译台州网站seo
  • 电商网站模块设计seo网站推广公司
  • 做旅游网站的项目背景云南seo
  • 网站怎么做竞价推广怎么创建网页链接
  • 怎么做车载mp3下载网站如何做百度搜索推广
  • 开淘宝店和做网站有什么区别百度首页推荐关不掉吗
  • c2c网站设计微信朋友圈推广平台
  • 做网站域名多少钱一呼百应推广平台
  • 博客做单页网站seo外包网络公司
  • 重庆观音桥网站建设百度站长工具seo查询
  • 广州哪里做公司网站号搜索引擎排名2022
  • 深圳网站建设开发公司哪家好百度搜索指数排名
  • 哪个行业必须做网站站长统计官方网站
  • 知舟网站建设关键词优化seo排名