Closed. This question is opinion-based。它当前不接受答案。
想改善这个问题吗?更新问题,以便editing this post用事实和引用来回答。
6年前关闭。
Improve this question
我正在为一个女性虐待资源中心建立一个网站。许多这样的中心都具有被中心称为“紧急按钮”的功能。在绿色栏中每页顶部的here中找到一个基本示例。
链接或按钮的想法是,如果有妇女正在浏览此网站寻求帮助,而他们的施虐者或不想认识的人走进了房间,则可以快速逃脱。有时,链接比关闭浏览器窗口快得多,这可能是可疑的。
我看到的问题是,我看到的大多数按钮只会将您发送至google或类似的网站。我将要做这样的事情:
或者
这样的链接会将您滚动到一些实际内容。它不是空白的Google搜索,但也不是很具体的东西,可以视为可疑。
我知道屏蔽引荐来源网址是很好的方法,但是即使采用该解决方案,您也可以在浏览器上单击“后退”按钮,然后将其捕获。对于这个问题,我认为我可以这样做:
的HTML
的JavaScript
我发布这个消息是因为这样做有生命危险,我需要尽可能接近整体解决方案的东西。你会怎么做?
更新-3-26-14:
我运行了与我合作的资源中心在此处发布的一些教育思想,这是他们的答案。 “我们的用户甚至进入我们的网站都需要极大的勇气。当他们来到我们的网站时,他们正在寻找一种快速,便捷的资源来摆脱可能威胁生命的情况。在大多数情况下,他们没有时间或精力来对他们进行安全的教育以浏览我们的网站。当出现“紧急按钮”的想法时,如果操作正确,它似乎是我们所治疗的大多数受害者一直要求的资源。”
在阅读了许多想法之后,似乎总的解决方案是将一个大按钮悬浮在左侧的恒定位置。页面加载时,它会在后台加载另一个网站(可能是ajax调用),因此单击该按钮仅会删除覆盖框架。单击将意味着没有加载时间。为了避免按下浏览器的后退按钮,似乎有必要告诉浏览器不要缓存,以及可能在每次页面更改时都使用
这仍然是一个技术问题。辩论很有帮助,但我仍然需要一个有效的技术解决方案。任何人都认为他们能够将所有这些想法融合为一个功能?病态的我自己马上进行研究,并将发布我提出的任何内容。谢谢大家
如果您想摆脱页面内容,我相信最好的方法是使用
下一步是修改您的浏览器历史记录。
如果滥用用户单击,您的服务器(Php,python等)将收到带有伪造URL的请求。因此,您需要在服务器中拥有另一个端点(如果您不了解端点,请告诉我)。制作与您的原始网站外观相似的良性文章,食谱或天气报告,以免在滥用者快速浏览该网站时引起怀疑。另外,请使用
附加备注
理想情况下,您的整个网站(当然不包括诱饵文章)都应该是SPA(单页应用程序),这样它才只会产生一个浏览器历史记录,而您只需要修改该记录即可。 归根结底,我认为您无法做出100%万无一失的应急按钮,总有办法解决。您只需要找到具有可接受水平的安全性和便利性的服务器即可。
另一种选择:局部更改原始信息并修改浏览器历史记录
我还在考虑而不是加载google ,如果不是真正地使用纯真信息在本地转换您的网站不是最好的方法。这看起来比加载google(每个人都这样做)的可疑性小,您可以在本地完成所有操作而无需重新加载页面。
当他们单击紧急按钮时,您可以进行一些快速(且与跨浏览器兼容的)DOM操作,以更改您网站上的关键信息并使它看起来无害(可能只是更改文本,必须快速)。这样,所有操作都在本地完成,在当今的绝大多数浏览器中,这些操作几乎都是即时的。您不必担心重新加载/服务器,因为脚本应该已经加载并且可以使用了。如果您保持相同的外观,则感觉用户只是在导航到网站的其他页面。从网站的外观上不要太明显,这是一个危机网站。当然,您无法导航回原始内容。我还要在紧急按钮上清楚说明该策略是什么,以便用户不会害怕。
我仍将尝试更改浏览器的历史记录,并购买另一个托管诱饵页面副本的域,如上例所示。不仅在域名可疑时,而且在滥用用户点击刷新或返回其历史记录的情况下。您应该将整个网站设置为SPA,因为您只能修改当前条目,而不能修改过去的历史记录。当然,这仅在HTML5浏览器中仍然有效,只需确保不会引发任何错误并且脚本的其他部分仍可在旧的浏览器中运行。
人们怎么看?有什么弱点吗?有什么好内容可以替换?
想改善这个问题吗?更新问题,以便editing this post用事实和引用来回答。
6年前关闭。
Improve this question
我正在为一个女性虐待资源中心建立一个网站。许多这样的中心都具有被中心称为“紧急按钮”的功能。在绿色栏中每页顶部的here中找到一个基本示例。
链接或按钮的想法是,如果有妇女正在浏览此网站寻求帮助,而他们的施虐者或不想认识的人走进了房间,则可以快速逃脱。有时,链接比关闭浏览器窗口快得多,这可能是可疑的。
我看到的问题是,我看到的大多数按钮只会将您发送至google或类似的网站。我将要做这样的事情:
<a href="http://www.msn.com/#news" rel="noreferrer">LEAVE WEBSITE NOW!</a>
或者
<a href='data:text/html;charset=utf-8, <html><meta http-equiv="refresh" content="0;URL='http://www.msn.com/#news/'"></html>'>LEAVE WEBSITE NOW!</a>
这样的链接会将您滚动到一些实际内容。它不是空白的Google搜索,但也不是很具体的东西,可以视为可疑。
我知道屏蔽引荐来源网址是很好的方法,但是即使采用该解决方案,您也可以在浏览器上单击“后退”按钮,然后将其捕获。对于这个问题,我认为我可以这样做:
的HTML
<a href="javascript:goNewWin()" rel="noreferrer">LEAVE WEBSITE NOW!</A>
的JavaScript
function goNewWin() {
window.open("backbuttonnewpage.html",'TheNewpop','toolbar=1,location=1,directories=1,status=1,menubar=1,scrollbars=1,resizable=1');
self.close()
}
我发布这个消息是因为这样做有生命危险,我需要尽可能接近整体解决方案的东西。你会怎么做?
更新-3-26-14:
我运行了与我合作的资源中心在此处发布的一些教育思想,这是他们的答案。 “我们的用户甚至进入我们的网站都需要极大的勇气。当他们来到我们的网站时,他们正在寻找一种快速,便捷的资源来摆脱可能威胁生命的情况。在大多数情况下,他们没有时间或精力来对他们进行安全的教育以浏览我们的网站。当出现“紧急按钮”的想法时,如果操作正确,它似乎是我们所治疗的大多数受害者一直要求的资源。”
在阅读了许多想法之后,似乎总的解决方案是将一个大按钮悬浮在左侧的恒定位置。页面加载时,它会在后台加载另一个网站(可能是ajax调用),因此单击该按钮仅会删除覆盖框架。单击将意味着没有加载时间。为了避免按下浏览器的后退按钮,似乎有必要告诉浏览器不要缓存,以及可能在每次页面更改时都使用
replaceState
禁用显示该站点的后退按钮。这仍然是一个技术问题。辩论很有帮助,但我仍然需要一个有效的技术解决方案。任何人都认为他们能够将所有这些想法融合为一个功能?病态的我自己马上进行研究,并将发布我提出的任何内容。谢谢大家
最佳答案
(ALMOST)最终编辑
好,我已经阅读了所有评论,这是我认为是最好的解决方案,但我也想到了一种全本地替代方案。我愿意进一步改进/讨论
var panic= function(){
document.body.innerHTML = '';
//this clears the current html in the body
//making it look like the page is loading
if(...){ //check if replaceState is supported so no error is thrown
var title="Decoy Article Title",
url="/decoypage"; //another endpoint on your server that gives the decoy website
window.history.replaceState("", title , url); //replace current history entry
}
//should be pretty fast up to this point
window.location.replace("http://www.google.com"); //load the google page or my alternative.
}
我在我的AWS实例上以54.186.79.95放置了一个示例,转到该页面,单击按钮,访问另一个页面,然后回击,您现在位于54.186.79.95/decoywebsite上,而您没有记录在54.186.79.95上/,如果禁用了缓存,则您的服务器将看到“../decoywebsite”请求并发送一个诱饵页面。不幸的是,您无法修改整个域,因此您需要该域不可疑。如果您想摆脱页面内容,我相信最好的方法是使用
document.body.innerHTML='';
。从技术上讲您仍然在页面上,但所有内容均已消失。下一步是修改您的浏览器历史记录。
window.history.replaceState
(link to docs)是HTML5的一项功能,可以修改您的历史记录而无需重新加载页面或请求服务器。它的速度非常快,但仅适用于现代浏览器。当用户单击紧急按钮时,我们将用伪造的url替换其历史记录中的当前页面。如果滥用用户单击,您的服务器(Php,python等)将收到带有伪造URL的请求。因此,您需要在服务器中拥有另一个端点(如果您不了解端点,请告诉我)。制作与您的原始网站外观相似的良性文章,食谱或天气报告,以免在滥用者快速浏览该网站时引起怀疑。另外,请使用
<META HTTP-EQUIV="CACHE-CONTROL" CONTENT="NO-CACHE">
标记来确保浏览器不会缓存。附加备注
另一种选择:局部更改原始信息并修改浏览器历史记录
我还在考虑而不是加载google ,如果不是真正地使用纯真信息在本地转换您的网站不是最好的方法。这看起来比加载google(每个人都这样做)的可疑性小,您可以在本地完成所有操作而无需重新加载页面。
当他们单击紧急按钮时,您可以进行一些快速(且与跨浏览器兼容的)DOM操作,以更改您网站上的关键信息并使它看起来无害(可能只是更改文本,必须快速)。这样,所有操作都在本地完成,在当今的绝大多数浏览器中,这些操作几乎都是即时的。您不必担心重新加载/服务器,因为脚本应该已经加载并且可以使用了。如果您保持相同的外观,则感觉用户只是在导航到网站的其他页面。从网站的外观上不要太明显,这是一个危机网站。当然,您无法导航回原始内容。我还要在紧急按钮上清楚说明该策略是什么,以便用户不会害怕。
我仍将尝试更改浏览器的历史记录,并购买另一个托管诱饵页面副本的域,如上例所示。不仅在域名可疑时,而且在滥用用户点击刷新或返回其历史记录的情况下。您应该将整个网站设置为SPA,因为您只能修改当前条目,而不能修改过去的历史记录。当然,这仅在HTML5浏览器中仍然有效,只需确保不会引发任何错误并且脚本的其他部分仍可在旧的浏览器中运行。
人们怎么看?有什么弱点吗?有什么好内容可以替换?