停止直接访问页面php和Jquery

时间:2014-10-10 14:34:44

标签: php jquery html security url-redirection

伙计我需要阻止用户直接从地址栏调出网页,例如:www.site.com/page.php,这不应该被允许。

我已经尝试了各种方法,但我也阻止所有调用ajax菜单,基本上当我直接登录页面时我必须返回登录页面cancellandomi也是会话,而它应该在从jQuery里面调用页面时工作菜单。

我该如何解决?

2 个答案:

答案 0 :(得分:1)

你可以通过多种方式实现这一目标:

  • 通过IP使用http服务器配置允许或拒绝:nginxapache

  • 在PHP脚本中允许或拒绝IP。例如:

    if (!in_array($_SERVER['REMOTE_ADDR'], array(
    '192.168.0.1',
    '192.168.0.2'
    // ....
    ))) die ('You are not allowed to run this script');
    
  • 允许或拒绝按会话标记访问页面。

  • 使用HTTP身份验证:nginxapache

答案 1 :(得分:1)

这是菜单中的链接 - 页面属性包含您要链接到的页面的名称:

<a page="page1.php">Page1</a>

您的客户端脚本:

$('a').click(function() {
    var page=$(this).attr('page');
    setCookie('page', page); // <== you need to write a cookie setting function for this
    location.href = page;
}

然后在您的php中搜索目标页面,阅读cookie并与页面名称进行比较。 如果没错,如果没有重定向到您的登录页面。