一个服务器开放多个端口,只有一个主域名,怎么解决

有一个主域名daxierhao.com,现在有3个服务

  • 端口8080 nodejs微信公众号后台(微信后台只接受80,443端口)
  • 端口8081 nginx 后台接口(主要用作自己网站小应用)
  • 端口8082 nodejs个人简历

开始用的方法是域名dns解析里面的隐性URL

在浏览器 command+alt+u 看到的是:

查看页面源代码后效果

这个明显是iframe,302暂时的重定向,这种方法一看就不行,别人一看就是不专业

另外一种是301永久重定向。这个永久的跳到另一个url。直接抛弃


解决方案

nginx 里面配置80端口,反向代理到其他的端口中。

具体配置

#user  nobody;
worker_processes  1;

#error_log  logs/error.log;
#error_log  logs/error.log  notice;
#error_log  logs/error.log  info;

#pid        logs/nginx.pid;

events {
    worker_connections  1024;
}

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

    #log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
    #                  '$status $body_bytes_sent "$http_referer" '
    #                  '"$http_user_agent" "$http_x_forwarded_for"';

    #access_log  logs/access.log  main;

    sendfile        off;
    #tcp_nopush     on;

    #keepalive_timeout  0;
    keepalive_timeout  65;

    
    #设置反向代理到nginx服务器小实例
    upstream instance {
        server 127.0.0.1:8082; 
    }
    #设置反向代理到resume
    upstream resume {
        server 127.0.0.1:8083; 
    }
    #设置反向代理到微信公众号后台
    upstream wx {
        server 127.0.0.1:8081; 
    }

    #gzip  on;

    #nginx开的8082服务器
    server {
        listen       8082;
        server_name  localhost;
        #error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    }
    #代理到8082端口
    server {
        listen       80;
        server_name  www.daxierhao.com;

        #charset koi8-r;

        #access_log  logs/host.access.log  main;

        location / {
            proxy_pass http://instance;
        }
    }
    #代理到8081端口 node 简历端口
    server {
        listen       80;
        server_name  resume.daxierhao.com;

        #charset koi8-r;

        #access_log  logs/host.access.log  main;

        location / {
            proxy_pass http://resume;
        }
    }
    #代理到8082端口 node 微信公众号后台
    server {
        listen       80;
        server_name  wx.daxierhao.com;

        #charset koi8-r;

        #access_log  logs/host.access.log  main;

        location / {
            proxy_pass http://wx;
        }
    }
}

利用nginx开启的80端口进行转载,当然也要在dns域名解析配置2级域名。

查看页面源代码后效果

注:这些端口都是假数据,大家不要去攻击我的网站啊。

参考资料:https://blog.csdn.net/linfanhehe/article/details/79727891

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容