通过nginx用域名来访问http和websocket

启动tomcat

为了验证转发确实准确,我先跑了一个tomcat,里面有个jenkins的应用在8080端口。
tomcat 通过localhost访问
在这里插入图片描述

修改hosts文件

127.0.0.1 www.jetbrains.com
(借用了一下jetbrains.com这个域名)

达到的效果
  1. http://www.jetbrains.com转到localhost:8080下的jenkins服务
  2. ws://www.jetbrains.com/websocket的ws转到localhost:7777下的ws服务器
修改nginx配置文件

#user  nobody;
worker_processes  1;

events {
    worker_connections  1024;
}

http {
    include       mime.types;
    default_type  application/octet-stream;



    #sendfile        on;
    #tcp_nopush     on;

    #keepalive_timeout  0;
    keepalive_timeout  65;

    #gzip  on;


    map $http_upgrade $connection_upgrade {
        default upgrade;
        ''      close;
    }

   server {
        listen       80;
        # 域名
        server_name  www.jetbrains.com;

        #charset koi8-r;

        #access_log  logs/host.access.log  main;

		# 转发到tomcat的8080端口
        location /jenkins {
            proxy_set_header Host $host;  
            proxy_set_header X-Real-IP $remote_addr;  
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_pass   http://127.0.0.1:8080/jenkins;
        }

		# websocket路径:ws://localhost:7777/websocket
		# 注意,前端是ws://localhost:7777/websocket ,这里拦截/websocket
		# 注意,前端是ws://localhost:7777/websocket/ ,这里拦截/websocket/
        location /websocket {
            proxy_pass http://127.0.0.1:7777;
            proxy_set_header Host $host;  
            proxy_set_header X-Real-IP $remote_addr;  
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_http_version 1.1;
            proxy_set_header Upgrade $http_upgrade;
            proxy_set_header Connection $connection_upgrade;
        }

        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }

     
}


结果查看
  1. jenkins 成功
    在这里插入图片描述

  2. websocket 成功

在这里插入图片描述

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值