说明
现在是云服务时代,很多人都拥有自己的域名和服务器。我本人也在阿里云买了服务器和域名。但由于只有一台服务器,对外只有一个80端口,但我们却想通过80端口访问到多个服务,比如个人博客,个人网站等,如:blog.loger.com,www.loger.com。这时候可以通过Nginx的域名转发来达到这样的效果。
环境
为了方便演示,这里采用了本地的Nginx。win10+Nginx1.14.0。windows下的配置和Linux下的配置是一样的。关于Linux安装和基本命令,可以参考我前面的文章:https://www.jianshu.com/p/eef40430b5e2和https://www.jianshu.com/p/bc3aee44a18b
配置
在Nginx的conf目录下,编辑nginx.conf
在http大节点下新增:
server {
listen 80;
server_name www.localhost.com;
location / {
proxy_pass http://127.0.0.1:8080/;
}
}
server {
listen 80;
server_name blog.localhost.com;
location / {
proxy_pass http://127.0.0.1:8081/;
}
}
这里说明下:www.localhost.com和blog.localhost.com都是我通过本地hosts文件配置的域名映射。通过配置文件可以看出,www.localhost.com转发到8080端口,blog.localhost.com转发到8081端口。下面通过代码验证下:
验证
一个简单的springboot项目
@RestController
@RequestMapping(value = {"/test"})
public class TestController {
@Value("${server.port}")
private String port;
@GetMapping(value = "/port")
public Object test() {
return port;
}
}
通过在springboot配置文件上修改端口号启动即可
结果


网友评论