【中间件】nginx反向代理实操
一、说明
nginx用于做反向代理,其目标是将浏览器中的请求进行转发,应用场景如下:

说明:
1、用户在浏览器中发送请求
2、nginx监听到浏览器中的请求时,将该请求转发到网关
3、网关再将请求转发至对应服务
二、具体操作
目标:nginx将用户请求转发至商品服务,便于访问商城页面
具体步骤:
1、虚拟机192.168.195.131使用docker命令启动nginx,nginx使用的是80端口
2. 用户在浏览器中给nginx发送请求http://192.168.195.131/(不写端口,http默认80,该端口为nginx端口)
3. nginx监听到上述请求后,将上述请求转发给商品服务。在/mydata/nginx/conf/conf.d目录下修改nginx的默认配置文件default.conf,包括:服务器地址、端口号、配置请求转发路径。
说明:
(1)nginx的配置文件为/mydata/nginx/conf/nginx.conf,由于该文件内的配置又引入了conf.d/*.conf配置文件 (已将/etc/nginx/conf.d挂在到/mydata/nginx/conf/conf.d),即default.conf配置文件的内容,而该文件中配置了监听服务器地址和端口,再进行请求转发,因此需要修改default.conf配置文件内容进行请求转发
(2)复制一份default.conf配置文件为gulimall.conf,在该文件中修改配置。
nginx.conf配置内容:

gulimall.conf修改后的配置:

配置含义:
listen:监听请求的端口,server_name:监听请求的服务器名。这两个配置用于监听浏览器的请求,和断言同理。当监听到浏览器发送该请求时,才会进行转发- 将请求
/转发给http://192.168.1.2:9005/,该请求为访问商品服务页面,此时nginx就将用户请求进行了转发
4、重启nginx(docker restart nginx命令),用户在浏览器中发送请求http://192.168.195.131/(默认80端口)给nginx,nginx监听到该请求后,将/请求转发至http://192.168.1.2:9005/,即可看到商品页面
