javascript - 使用 http/https 时是否有识别 'Domain not Owned' 站点的标准方法?

标签 javascript node.js http redirect

我正在使用 Node webshot 库来拍摄网站的图像,例如 http://x.y.z.com/blah 。如果该网站存在,我会得到一张漂亮的图片。如果该网站不存在,我可能会也可能不会收到错误。如果出现错误情况,我可以使用默认图像。但是,我发现某些域名被重定向到臭名昭著的域名销售网站或“搜索”域名网站。例如,http://notawebsite.com.org被重定向到http://www.com.org/?notfound=notawebsite.com.org 。我还检查了 dns,看看是否可以提前使站点失效,但它解析得很好(到 www.com.org 地址)。那么我可以做些什么来确定 url 网站是否被重定向到这些域搜索/销售网站之一?

最佳答案

Is there a standard way of Identifying 'Domain not Owned' sites when using http/https?

不,不是真的。在您引用的示例中,http://notawebsite.com.org 的服务器返回 301 重定向。在我看来,您只是决定,如果您要重定向到不同的域(而不仅仅是重定向到同一域上的不同页面,也不仅仅是从同一域上的 http 重定向到 https),那么您尝试访问的 URL 本身显然未处于事件状态。

没有标准方法可以知道您重定向到的网站是否只是域名卖家还是实际的活跃域名。您可以手动调查一堆被重定向的网站,并教您的代码如何识别一些这样做的常见域名卖家,但这将是一项有点无休止的任务,可能需要定期的人工干预来区分真实网站和真实网站之间的区别。域名销售网站。最后,您可以建立域名卖家域名的黑名单,并拒绝对重定向到黑名单上任何域名的任何 URL 进行编目。但是,可能需要一些手动干预来构建和维护黑名单。

您也无法确定您要获取重定向的给定域上的所有 URL 都会执行类似的重定向,但您可以肯定地说您尝试从中获取快照的 URL 并不直接处于事件状态在其自己的。如果用户在浏览器中访问该域,他们将不会在浏览器中看到该域的任何内容,因为重定向会更改 URL。

So is there anything I can do to determine if a url site is redirected to one of theses Domain search/selling sites?

建立您自己的经销商域名黑名单,这些域名会出现在像这样的重定向中。然后,每当您尝试请求页面 URL 来获取网络快照并从请求中收到 3xx 状态代码时,您都会检查重定向域以查看它是否在您的黑名单中。

关于javascript - 使用 http/https 时是否有识别 'Domain not Owned' 站点的标准方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42724832/

相关文章:

node.js - 比较 Mongoose 查询中的 ObjectID

http - Cloudflare 页面规则,仅在一页上使用 SSL

java - 使用 JSF1.2,如何从支持 bean 引发 404 错误?

ruby-on-rails - 下载大文件(~40MB)并使用回形针另存为附件

javascript - js文件中的eex语法或Phoenix代码

javascript - 主干 _.each AJAX 依赖项

javascript - Angular ng-选项 : iterate over a number array for displaying content of an other array but having index chosen in ng-model

php - 使用 jquery 和 php 处理目录中的文件 - 获取状态并更新进度条

apache - 是什么让 Node.js 比 Apache 更具可扩展性?

php - 使用 node.js 和 socket.io 的 SOAP 客户端