javascript - 查看view-source :时如何加载不同的代码

标签 javascript php

我想检测 view-source: 并向其添加不同的 html。 我尝试过使用它,但它不起作用

 $url= $_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'];
 $needle = "view-source:";
 if (strpos($url,$needle)) { echo "You can not see me";

 }
 else {}

最佳答案

这不是“完全可能”,但根据具体情况,有办法阻止它 - 无论您读多少次“不可能”。

如果您使用页面作为passoff,则可以通过使用$_SERVER['HTTP_REFERER']来阻止查看源代码。

示例:page1.php 将数据发布到 page2.php,后者会 secret 添加更多要发布的数据,并使用 javascript 从 page2.php 自动发布> 到 page3.php

在这种情况下,您可以通过执行以下操作来隐藏 page2.php 的源代码:

if($_SERVER['HTTP_REFERER'] != 'https://yourwebsite.ccom/page1.php') {
} else {
    //add your form and javascript code to auto post
}

这样做时,如果用户快速尝试停止浏览器并查看源代码,他们将看到空的源代码。即使他们“重新发布”表单数据,他们也看不到 html 源。

当然,这不会阻止他们通过元素检查器查看它。

然后您可以添加一些js来阻止对F12的访问,例如:

$(document).keydown(function(e){
    if(e.which === 123){
        return false;
    }
});

并使用类似的方法禁用右键单击和快捷键

<body oncontextmenu="return false" onkeydown="return false;" onmousedown="return false;">

但是,用户仍然可以禁用 JavaScript、使用插件或其他几种方法来进行检查。这就是为什么我说“完全可能”。

关于javascript - 查看view-source :时如何加载不同的代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45443326/

相关文章:

javascript - 定义插入的类型为String还是int

javascript - Ajax - 从 subview 设置 ajax 的 url 不依赖于父 View

javascript - 从 JavaScript 调用 Azure 函数来获取 SAS token 会违反安全性吗?

php - 用正则表达式匹配两个标签之间的所有内容?

php - 将ajax post请求传递给其他服务器上的php

php - Docker Redis 连接被拒绝

php - Elasticsearch-PHP批量

php - 从行中选择最大的数字

javascript - 动态加载代码并获取解析错误的行号

javascript - Jquery Accordion 关闭