Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/83.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
停止直接访问php和Jquery页面_Php_Jquery_Html_Security_Url Redirection - Fatal编程技术网

停止直接访问php和Jquery页面

停止直接访问php和Jquery页面,php,jquery,html,security,url-redirection,Php,Jquery,Html,Security,Url Redirection,伙计们,我需要防止用户直接从地址栏调用网页,例如:www.site.com/page.php,这是不允许的 我尝试了各种方法,但我也阻止了所有调用ajax菜单,基本上,当我直接登录页面时,我必须返回登录页面Cancelandomi,也可以访问会话,而从菜单内的jQuery调用页面时,它应该可以工作 我该怎么修理 您可以通过多种方式实现: 通过IP允许或拒绝http服务器配置: 在php脚本中通过IP允许或拒绝。例如: if (!in_array($_SERVER['REMOTE_ADDR'],

伙计们,我需要防止用户直接从地址栏调用网页,例如:www.site.com/page.php,这是不允许的

我尝试了各种方法,但我也阻止了所有调用ajax菜单,基本上,当我直接登录页面时,我必须返回登录页面Cancelandomi,也可以访问会话,而从菜单内的jQuery调用页面时,它应该可以工作


我该怎么修理

您可以通过多种方式实现:

通过IP允许或拒绝http服务器配置:

在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身份验证:,
这是菜单中的链接-页面属性包含要链接到的页面的名称:

<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并与页面名称进行比较。
如果正确,ok,If not重定向到您的登录页面。

那么您正在尝试这样做:当用户导航到该页面时,您是否将他们重定向到登录页面?或者只是阻止他们访问该区域?您可以在要放置jquery的页面上使用definetest,true,然后在页面上使用ifdefinedtest{//code}else{die;}。phpIf用户将地址栏中的名称写入要进入登录页面的页面,但是如果使用适当的菜单访问页面,则必须能够使用jquery调用页面。关于如何做到这一点的想法?谢谢你,我不再明白你的意思了。你能举一个你正在尝试的例子吗?你可以让你的jQueryAjax帖子不被获取,然后阻止所有没有发布数据的调用。