相关疑难解决方法(0)

阻止直接访问php包含文件

我有一个php文件,我将作为一个包含专门使用.因此,当我通过输入URL而不是包含它来直接访问它时,我想抛出一个错误而不是执行它.

基本上我需要在php文件中进行如下检查:

if ( $REQUEST_URL == $URL_OF_CURRENT_PAGE ) die ("Direct access not premitted");
Run Code Online (Sandbox Code Playgroud)

是否有捷径可寻?

php include-guards include

160
推荐指数
12
解决办法
20万
查看次数

阻止直接访问PHP页面

如何阻止我的用户直接访问仅适用于ajax调用的页面?

在ajax调用期间传递密钥似乎是一种解决方案,而不使用密钥的访问将不会被处理.但是制作钥匙也很容易,不是吗?观点诅咒......

p/s:使用Apache作为webserver.

编辑:为了回答原因,我在index.php中有jQuery ui-tabs,并且这些选项卡内部是带有脚本的表单,如果直接访问它们将无法工作.为什么用户会想要这样做,我不知道,我只是想通过阻止直接访问没有验证脚本的表单来提高用户友好性.

php apache ajax

17
推荐指数
3
解决办法
2万
查看次数

阻止跨源请求

我有一个wordpress网站,我从godaddy密封中得到一个错误.我在我的网站页脚的小部件部分中有验证图像的html.

当我重新加载页面并检查firebug时,我在控制台中收到此错误.

跨源请求已阻止:同源策略不允许在https://seal.godaddy.com/setSealAttr?sealID=ID#上读取远程资源 .这可以通过将资源移动到同一域或启用CORS来解决.

我试图查找有关这个问题的信息,这有点过头了.任何人都可以告诉我什么是抛出这个错误以及我如何解决这个问题?我只是想了解这个错误是如何发生的.这是某个地方与jquery的冲突问题,还是密封加载的方式或者加载时间?

任何帮助将不胜感激.

wordpress ssl jquery

14
推荐指数
2
解决办法
9万
查看次数

如何防止直接访问我的JSON服务?

我有一个JSON Web服务来返回要在我的Google地图上显示的家庭标记.

从本质上讲,http://example.com调用Web服务来找出所有地图标记的位置,如下所示:

http://example.com/json/?zipcode=12345
Run Code Online (Sandbox Code Playgroud)

它返回一个JSON字符串,例如:

{"address": "321 Main St, Mountain View, CA, USA", ...}
Run Code Online (Sandbox Code Playgroud)

所以在我的index.html页面上,我接受了JSON字符串并放置了地图标记.

但是,我不希望发生的是人们直接呼叫我的JSON Web服务.

我只想http://example.com/index.html打电话给我的http://example.com/json/网络服务...而不是一些随意的老兄/json/直接打电话.

Quesiton:我如何阻止直接呼叫/访问我的http://example.com/json/网络服务?


更新:

为了更清晰,http://example.com/index.html请调用http://example.com/json/?zipcode=12345...和JSON服务
- 返回半敏感数据,
- 返回JSON数组,
- 响应GET请求,
- 使请求启用JavaScript的浏览器

同样,我不希望发生的是人们只是查看我的index.html源代码然后直接调用JSON服务.

javascript security json web-services

7
推荐指数
3
解决办法
7589
查看次数

如何阻止外部http请求?(确保AJAX通话)

我想使用post来更新数据库并且不希望人们手动执行它,也就是说,它应该只能通过客户端中的AJAX来实现.在这种情况下是否有一些众所周知的加密技巧?

假设我发出一个GET请求,将新用户插入我的数据库中site.com/adduser/<userid>.有人可能通过发出虚假请求来过多填充我的数据库.

security ajax http ring

6
推荐指数
1
解决办法
4876
查看次数

拒绝直接url访问在ajax上调用的php文件

我试图拒绝直接url访问一个调用ajax进行表单验证的php文件.我目前的代码一直工作,直到表单验证,然后它不起作用.我不想使用.htaccess.

当前代码:

<?php

$url = strtolower(basename($_SERVER['PHP_SELF'])); // Gets url (parent that uses the include)
$fil = strtolower(basename(__FILE__)); // gets filename (the included file)
if ($url == $fil){
    // if they are the same (file is accessed through url
    // redirect to forbidden page
    header("HTTP/1.0 403 Forbidden");
    exit;
}
// require my configuration
require_once("config.php");
// code to be executed for ajax validation
$username = $_POST['username'];
$conn = mysql_connect(DB_HOST,DB_USER,DB_PASS) or die(mysql_error());
mysql_select_db(DB_NAME,$conn) or die(mysql_error());

$query = mysql_query("SELECT * FROM " . TB_USER …
Run Code Online (Sandbox Code Playgroud)

php ajax url

2
推荐指数
1
解决办法
4746
查看次数

标签 统计

ajax ×3

php ×3

security ×2

apache ×1

http ×1

include ×1

include-guards ×1

javascript ×1

jquery ×1

json ×1

ring ×1

ssl ×1

url ×1

web-services ×1

wordpress ×1