Apache 406不可接受错误获取参数问题?

Apache 406不可接受错误获取参数问题?,apache,.htaccess,http-status-codes,http-status-code-406,Apache,.htaccess,Http Status Codes,Http Status Code 406,任何人都可以告诉我为什么以下URL返回406错误: http://kolek.to/functions/remote-upload.php?url=http%3A%2F%2Fben-major.co.uk%2Fhosting%2Fbm-equipment%2Faxe-2.jpg&item_id=2 删除?url=参数似乎可以使一切正常: http://kolek.to/functions/remote-upload.php?item_id=2 供您参考,remote upload.p

任何人都可以告诉我为什么以下URL返回406错误:

http://kolek.to/functions/remote-upload.php?url=http%3A%2F%2Fben-major.co.uk%2Fhosting%2Fbm-equipment%2Faxe-2.jpg&item_id=2
删除
?url=
参数似乎可以使一切正常:

http://kolek.to/functions/remote-upload.php?item_id=2
供您参考,
remote upload.php
的内容如下:

<?php
require_once('../models/api.php');
$request_url = urldecode($_REQUEST['url']);
$item_id = $_REQUEST['item_id'];
echo $item_id;
?>

我认为这是由于来自服务器的安全过滤器造成的(我在响应标题中看到的是Apache)

在您的例子中,Apache
mod_security
是默认打开的。通过在服务器上运行此命令,您可以使用以下方法来诊断问题(关闭过滤器可以解决问题):

SecFilterEngine off
但这样做只是为了检查问题是否出在安全过滤器上,我不鼓励关闭过滤器(注射和垃圾邮件攻击的危险)

如果您发现这是导致问题的过滤器,请尝试将您的请求放入白名单:
您可以在主网站上找到指南。

谢谢。这是一个
mod_安全问题。我们可以通过发出POST请求而不是get请求来绕过它。