基于引用者客户端登录的Javascript重定向

时间:2014-10-06 04:51:10

标签: javascript redirect login passwords client

有一个小问题搞清楚

我有一个非常不安全的登录部分的摄影网站,客户可以访问他们的照片库。 (意识到它不安全,但如果我们能解决这个问题,那就好了)

正常流程应如下所示: 输入index.html> clients.html>客户端类型代码为ex。 9999>客户被带到客户/ 9999.html

创建这些图库的原因是为我的网站着陆页(index.html)带来更多流量。 我报道一个事件,在图库中发布照片,并提供代码。我的目标是让我的客户向参加活动的所有客人提供我的网站和代码,因此在他们访问客户/ 9999.html图库页面之前,他们被迫了解我的主要投资组合index.html。

然而,我所意识到的是我的客户不是在分享我的网站和代码,而是与他们的客人直接联系。所以所有观众都从指向它的直接链接访问9999.html,并完全省略查看index.html。他们查看9999.html后,90%的流量都没有下降。

我正在尝试使用基于引荐链接的重定向修复此问题,但是我遇到了问题并且以下代码似乎正在重定向所有流量,即使我通过index.html>正确“登录” clients.html>输入代码

<!--Redirect if not from Client Page-->
<script type="text/javascript">
if (document.referrer !== "../clients.html") {
    document.location.href = "../index.html";
}
</script>
<!--End Redirect-->

任何提示?

2 个答案:

答案 0 :(得分:1)

您正在测试推荐人是否错误。永远不会是../ xxxxxx

它也是window.location,而不是document.location

而是在索引页面上设置一个cookie,这样他们至少可以看一次。

如果您坚持要测试推荐人:

var ref = document.referrer;
var host = ref.indexOf(location.hostname) !=-1; // www.yoursite.com
var page = ref.indexOf('clients.html') !=-1; // page name
if (!host || !page) location.replace("../index.html");

如果我们关闭JS,这一切都可以被规避

答案 1 :(得分:0)

想通了。而不是假设clients.html必须是引用者,我只是将其更改为重定向,如果有引用者

这样:

<!--Redirect if not from Client Page-->
<script type="text/javascript">
if (document.referrer == '') {
    document.location.href = "../index.html";
}
</script>
<!--End Redirect-->