使用Nginx快速配置反向代理
Nginx配置反向代理
这里的配置文件在 /etc/nginx/nginx.conf
只需更改server块
server_name:填写域名,如果没有域名,则填写ip地址
listen:设置为80,则在网页输入地址即可,如果不是80,则需要输入ip地址后再输入自己设置的端口号
简单
server { listen 80; server_name 192.168.179.131; location / {
//必须以http://开头 proxy_pass http://192.168.179.131:8080; } }
测试:
编写一个(springboot使用2.4.0)controller (端口号为8080)
@RestController @RequestMapping("/nginx") public class TestController { @Resource private TestService service; @GetMapping("/find") public TestUser find(){ return service.find(); } }
打包,放入linux,并启动(java -jar jar包全名.jar)
输入:192.168.179.131/nginx/find 即可跳转到 192.168.179.131:8080/nginx/find
来个不一样的
server { listen 80; server_name localhost; # 这里的 /test 末尾要加不加“/” 都行 location /test/ {
# 路径后面加 “/”,不加就会发生很多种情况种情况 proxy_pass http://localhost:8080/demo/ } }
访问 localhost/test 即可跳转到 localhost:8080/demo
访问 localhost/test/abc 即可跳转到 localhost:8080/demo/abc
代理的路径末尾加不加 “/” 区别
1、加了 “/”
访问 localhost/test/abc 即可跳转到 localhost:8080/demo/abc
2、没加 “/”
访问 localhost/test/abc 即可跳转到 localhost:8080/demo/test/abc
关于加不加 “/” 具体请前往 https://www.cnblogs.com/kevingrace/p/6566119.html
多端口
在一个http块中,创建多个server
server { listen 8001; server_name localhost; location / { proxy_pass http://localhost:8021; } } server { listen 8002; server_name localhost; location / { proxy_pass http://localhost:8022; } } server { listen 8003; server_name localhost; location / { proxy_pass http://localhost:8023; } }
输入:192.168.179.131:8001/nginx/find 即可跳转到 192.168.179.131:8021/nginx/find
剩下两个也是同理
多域名(或ip地址)
server { listen 80; server_name 192.168.1.1; location / { proxy_pass http://192.168.1.1:8080; } } server { listen 80; server_name 192.168.1.2; location / { proxy_pass http://192.168.1.2:8080; } } server { listen 80; server_name 192.168.1.3; location / { proxy_pass http://192.168.1.3:8080; } }
访问 192.168.1.1/test 即可跳转到 192.168.1.1:8080/test
其他两个同理