Javascript 按主机名列出的相同公共/专用ip地址

Javascript 按主机名列出的相同公共/专用ip地址,javascript,jquery,backbone.js,requirejs,underscore.js,Javascript,Jquery,Backbone.js,Requirejs,Underscore.js,我将我的主干网+要求+下划线.js网站放在公共服务器上供客户浏览,也放在公司的本地服务器上供员工浏览 外界人士可以通过公共ip地址或域名访问我的网站;否则,本地网络中的员工可以通过专用ip地址进行访问 我可能会得到用户在url中键入的主机名,例如www.mydomain.com,http://114.130.180.248 例如公共知识产权,http://184.150.10.26 使用jquery实现私有ip 我想做的是:测试用户是否使用公共ip/域名或私有ip本地网络访问我的网站,因此如果用

我将我的主干网+要求+下划线.js网站放在公共服务器上供客户浏览,也放在公司的本地服务器上供员工浏览

外界人士可以通过公共ip地址或域名访问我的网站;否则,本地网络中的员工可以通过专用ip地址进行访问

我可能会得到用户在url中键入的主机名,例如www.mydomain.com,http://114.130.180.248 例如公共知识产权,http://184.150.10.26 使用jquery实现私有ip

我想做的是:测试用户是否使用公共ip/域名或私有ip本地网络访问我的网站,因此如果用户是私有用户,我将重定向到这些私有路径,出于同样的目的,如果用户通过公共uri访问,我将重定向到公共服务器

为什么要这样做:因为我已经在主干网配置的变量中注册了图像、web服务和报告的路径作为常量,例如:

//private host
MySite.WebServiceHost = "184.150.10.23";
MySite.WebsiteHost = "184.150.10.26";
MySite.PathImage = "184.150.10.25";
MySite.ReportingHost = "184.150.10.24";

//public host
MySite.WebServiceHost = "114.130.180.245";
MySite.WebsiteHost = "114.130.180.248";
MySite.PathImage = "114.130.180.246";
MySite.ReportingHost = "1114.130.180.247";
注意:我不想按范围10.0.0.0–10.255.255.255、172.16.0.0–172.31.255.255、192.168.0.0–192.168.255.255验证ip地址?因为我们的私有ip地址不是永久使用的,它是由于我们组织的一些其他政策而改变的,所以它可能是我上面提到的范围之外的其他范围,可能是185.xxx.xxx.xxx或其他什么

同样,关于如何验证ip地址/主机名是私有的还是公共的,有什么想法吗?第三方网站或插件在这里是可以接受的


如果您有任何帮助,我们将不胜感激,谢谢。

不。请不要使用客户端JavaScript执行类似操作。无论如何,您都需要一些服务器端逻辑来保护私有路径,所以请在服务器上识别本地网络客户端。@Bergi:hmm我必须在客户端完成这项工作亲爱的。好的,随便吧。你被警告了:-那有什么问题?只需获取location.host并测试它是公共的还是私有的。@Bergi,问题是,我不知道如何测试它。我不想使用IP地址的字符串按范围进行比较来检测它。只需检查location.host==MySite.WebServiceHost,这是一个简单的字符串比较吗?你还想做什么?