什么是反向代理?
反向代理服务器位于用户与目标服务器之间,但是对于用户而言,反向代理服务器就相当于目标服务器,即用户直接访问反向代理服务器就可以获得目标服务器的资源。同时,用户不需要知道目标服务器的地址,也无须在用户端作任何设定。反向代理服务器通常可用来作为Web加速,即使用反向代理作为Web服务器的前置机来降低网络和服务器的负载,提高访问效率。
打包一个jar程序
新建一个Spring项目,创建一个简单的Controller层文件。
package com.example.conestdemo;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.HashMap;
import java.util.Map;
@RestController
public class HelloController {
@GetMapping("/hello")
public Map<Object, Object> hello(){
Map<Object, Object> map = new HashMap<>();
map.put("name","qy151");
return map;
}
}
pom.xml文件中导入以下内容。
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>
对程序进行打包。
将打包完成的程序上传到Linux中并运行。
java -jar conestdemo-0.0.1-SNAPSHOT.jar(打包的程序名称,可用Tab补全)
使用对应的IP地址以及程序端口进行访问。
修改nginx的配置文件
在配置文件中添加以下内容:
#反向代理配置
server{
#监听端口
listen 666;
server_name localhost;
location / {
#代理的真实服务路径
proxy_pass http://192.168.112.88:8081;
}
}
在nginx的sbin目录中重新加载nginx的配置文件。
./nginx -s reload
使用代理路径访问程序。