【问题标题】:406 Not Acceptable error GET parameter issue?406 Not Acceptable error GET 参数问题?
【发布时间】:2012-11-21 19:30:08
【问题描述】:

谁能告诉我为什么下面的 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 .htaccess http-status-codes http-status-code-406


    【解决方案1】:

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

    在您的情况下是默认打开的 Apache mod_security。虽然您可以通过在服务器上运行以下命令来使用以下命令来诊断问题(关闭过滤器应该可以解决问题):

    SecFilterEngine off
    

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

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

    【讨论】:

    • 谢谢。这是一个mod_security 问题。我们能够通过发出 POST 请求而不是 GET 请求来绕过它。
    猜你喜欢
    • 1970-01-01
    • 2017-05-25
    • 1970-01-01
    • 2018-07-31
    • 2013-08-10
    • 2016-12-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多