谷粒商城-nginx
目录
搭建域名访问环境一(反向代理配置)
反向代理:就是为了不让服务的地址暴露,通过访问nginx来访问服务
域名解析的规则:
①先解析本机是否有相应的映射规则
访问localhost即访问127.0.0.1
②DNS域名解析获取相应的ip地址
由于每次修改hosts文件太麻烦了,因此,安装SwitchHosts
下载地址:Releases · oldj/SwitchHosts · GitHub
必须以管理员的权限启动
如果无写入权限,参考:win10使用Switchhost显示无修改权限_牧码ya的博客-CSDN博客
配置完成之后,我们访问gulimall.com就会访问虚拟机
让nginx帮我们进行反向代理,所有原来自gulimall.com的请求,都转发到商品服务的首页
nginx的全局配置文件已经被挂载到了/mydata/nginx/conf/nginx.conf
1是全局块,2是events块,3是http块,4是server块,server块的配置文件是conf.d文件夹下的所有配置文件
配置server块
重启nginx
docker restart nginx
出现错误:访问失败
查看错误原因:
docker logs nginx
出现问题的原因:缺少;
搭建域名访问环境二(负载均衡到网关)
存在问题随着服务的增多,每次都配置将会很麻烦,因此,需要将访问gulimall.com的请求转发给网关,由网关处理。
ngixn负载均衡配置文档:Using nginx as HTTP load balancer
①修改配置文件
修改nginx.conf配置
upstream gulimall{
server 192.168.56.1:88;
}
配置了上流服务的名称gulimall,服务块的地址为本机的网关地址
修改conf.d下的gulimall.conf配置
proxy_pass http:\\gulimall;
会自动去上游服务的组中查找
重启nginx
②修改网关配置文件
gateway host 路由规则配置文档:Spring Cloud Gateway
注意事项:host配置必须置于其它配置之后否则位于host配置之前的配置将不生效
- id: gulimall_host_route
uri: lb://gulimall-product # lb:负载均衡
predicates:
- Host=**.gulimall.com,gulimall.com # **.xxx 子域名
重启网关
出现问题:访问域名报错404,访问api接口可以访问成功
说明:nginx已经将请求反向代理给网关了但是网关的host路由断言未起作用
出现问题的原因:nginx将请求交由网关处理的时候会丢失host
解决方案如下:设置请求头
proxy_set_header Host $host # Host 请求头的名称 $host获取当前请求的host值
重启nginx,成功
更多推荐
所有评论(0)