繁体   English   中英

使用nginx的node.js,如何删除直接的ip:port访问

[英]node.js with nginx, how to remove direct ip:port access

我继承了一个node.js项目,并且对平台/语言非常陌生。

我继承的应用程序正在开发中,因此正在开发中。 在当前状态下,它运行在端口7576上,因此您可以通过以下方式访问它:server_ip:7576

我的任务是将此“原型”放在实时服务器上,以便老板可以向投资者展示该原型。但是我必须使用密码保护它。

所以我要做的是让它在实时服务器上运行。 然后,我使用了如下的nginx虚拟主机:

server {
        listen 80;

    auth_basic            "Restricted";
    auth_basic_user_file  /usr/ssl/htpasswd;

        access_log   /etc/nginx/logs/access/wip.mydomain.com.access.log;
        error_log  /etc/nginx/logs/error/wip.mydomain.com.error.log;
        server_name  wip.mydomain.com;

        location / { 
            proxy_pass http://127.0.0.1:7576;
            root         /var/app;
            expires 30d; 
            #uncomment this is you want to name an index file: 
            #index index.php index.html;
            access_log off; 
        }

        location ~* ^.+\.(jpg|jpeg|gif|png|ico|css|zip|tgz|gz|rar|bz2|pdf|txt|tar|wav|bmp|rtf|js|flv|swf|html|htm)$ {
            root         /var/app/public;
        }
}

`

这项工作已经完成,我现在可以通过访问wip.mydomain.com来访问我的应用

而且我可以通过nginx轻松地对其进行密码保护。

我的问题是该应用仍可通过ip:port访问,但我不知道如何防止。

任何帮助表示赞赏。

谢谢

在您的节点javascript代码中,您需要显式绑定到回送IP:

server.listen(7576, '127.0.0.1');

(您正在寻找对.listen(<port>)的调用以进行修复。该变量可能称为app或其他名称)。

任何以127.开头的IP地址都是环回地址,只能在单台计算机上访问(实际上并没有使用网络)。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM