美文网首页
Nginx配置根据域名转发

Nginx配置根据域名转发

作者: 1ff5a98e5398 | 来源:发表于2018-10-30 21:51 被阅读235次

说明

现在是云服务时代,很多人都拥有自己的域名和服务器。我本人也在阿里云买了服务器和域名。但由于只有一台服务器,对外只有一个80端口,但我们却想通过80端口访问到多个服务,比如个人博客,个人网站等,如:blog.loger.com,www.loger.com。这时候可以通过Nginx的域名转发来达到这样的效果。

环境

为了方便演示,这里采用了本地的Nginx。win10+Nginx1.14.0。windows下的配置和Linux下的配置是一样的。关于Linux安装和基本命令,可以参考我前面的文章:https://www.jianshu.com/p/eef40430b5e2https://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.comblog.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配置文件上修改端口号启动即可

结果

blog.localhost.com www.localhost.com

相关文章

网友评论

      本文标题:Nginx配置根据域名转发

      本文链接:https://www.haomeiwen.com/subject/hjmntqtx.html