加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php – 如何直接在URL中拒绝用户访问脚本

发布时间:2020-12-13 18:14:45 所属栏目:PHP教程 来源:网络整理
导读:我有一个jQuery脚本使用.live()来加载它的页面内容. $('#content').load("content.php?" + id); 问题:如何拒绝用户通过URL直接访问文件content.php? 我试图将此代码放在content.php之上,但Access Denied出现在我的#content div中 if (!empty($_SERVER['SCR
我有一个jQuery脚本使用.live()来加载它的页面内容.
$('#content').load("content.php?" + id);

问题:如何拒绝用户通过URL直接访问文件content.php?

我试图将此代码放在content.php之上,但Access Denied出现在我的#content div中

if (!empty($_SERVER['SCRIPT_FILENAME']) && 'content.php' == basename($_SERVER['SCRIPT_FILENAME']))
    die('Access Denied');

确保用户无法使用URL访问我的content.php文件的正确方法是什么?

你可以使用某种散列.例如,如果content.php具有参数id;你添加一个额外的参数哈希,其中包含“’某个随机字符串’id * 15”的MD5哈希值.在content.php中,你检查哈希& id匹配;如果没有拒绝访问.

计算必须在PHP(而不是ajax)中完成,因为用户必须不知道散列algprithmus.

使用此方法,用户可以直接查找源代码并访问页面,但您不能完全禁止该页面,因为浏览器需要访问页面才能显示它.但用户无法访问之前未通过ajax访问的页面.您可以使用一些标头(HTTP_X_REQUESTED_WITH)来阻止大多数互联网用户直接访问该页面,但有经验的用户无论如何都会更改标题并访问它.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读