服务器问答

nginx 端口配置好了域名必须要加上端口号才能访问这是哪里的问题呢?
0
2021-05-19 20:08:33
idczone

如题

  • 一个 vps 跑了两个站  A 站点:a.tk B 站点:b.cf
  • 每次访问 http://b.cf 后面不加 6010 访问不了而且还会跳转到 A 的网页上面
  • 请问这个原因在哪里呢 谢谢

A 站点

  • 独立的域名 A
/etc/nginx/conf.d# cat wiki.conf 
server {
        listen       1919;
        server_name  www.A.tk;

        location / {
            proxy_pass http://ip-addr:3000;
            
            root   /var/www/wikijs/;
            index  index.js init.js agent.js;
            proxy_set_header  X-Real-IP  $remote_addr;
            proxy_set_header  X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_set_header Host $http_host;
            proxy_redirect off;
        }
}

B 站点

  • 网盘独立域名 B
/etc/nginx/conf.d# cat tank.conf
server {
        l抗投诉服务器isten      1919;
        server_name    B.cf;
        # rewrite ^(.*)$ https://blog.eyeblue.cn$1 permanent;
        location / {
        
        		proxy_pass http://ip-addr:6010;
                
                root    /srv/tank;
                index   index.html;
                
                proxy_set_header host $host;
                proxy_set_header X-Forwarded-For $remote_addr;
                proxy_pass_request_headers      on;
                client_max_body_size  8m;
        }
}

sites-enabled/default

  • 这里已经修改默认监听端口了

/etc/nginx/conf.d# cat ../sites-enabled/default


# Default server configuration
#
server {
        listen 1919 default_server;
        listen [::]:1919 default_server;


不要用大写,莫名其妙的大写。

真实地址都是小写 谢谢提醒

nginx 没有加载新配置?你都没 listen 80 怎么不加端口访问还会跳转?

除了 80 和 443,其它都需要加端口访问,就是这样。

80 已经被用了.....
谢谢提醒 我是新人 对这个不懂

建议可以看看 http 权威指南这本书,问题迎刃而解。

不加端口号的情况 http 默认 80 端口, 其他端口的话自然需要手动指定了

你既然 listen 的是 1919
那你应该访问
http://www.a.tk:1919
http://b.cf:1919
你用 http://b.cf:6010 能访问,实际上压根没过 nginx,直接访问了你 docker 里的网盘。
另:既然打算用 nginx 反代,建议你 docker 映射端口的时候不要绑 0.0.0.0,绑 127.0.0.1 吧,养成良好习惯。
最好外面再套一层 iptables,只放行必要端口。

好的 
好吧
嗯我也觉得这样加 6010 NG是没起作用的 谢谢回复
问题已经明了了我还是太小白了...
感谢各位的热心回复

数据地带为您的网站提供全球顶级IDC资源
在线咨询
专属客服