当数据uri post用作值时的HTTP 403

时间:2017-08-06 19:57:59

标签: php apache http-status-code-403 data-uri

在尝试发布包含data: ...

的值时遇到HTTP 403

这只发生在应用程序测试的1/4服务器上。

代码:

<?php 
if(isset($_POST['send'])) {
  // some code here..
}

$data = 'data:image/png;base64,iVBORw0KG...';
?>

<form name="sendform" method="post">
  <input type="text" value="<?php echo $data; ?>"/>
  <input type="submit" name="send" value="send"/>
</form>

不确定如何解决这个问题...... 知道为什么会这样吗?

1 个答案:

答案 0 :(得分:0)

发生这种情况是因为它是由托管服务提供商定义的安全策略,当您发送带有data:image/png;base64,

的POST负载的请求时会阻止您的请求

在我的情况下,我联系托管服务提供商的支持团队,他们具有root访问权限,可以将规则列入白名单。

更改该规则会影响托管安全级别。但总是可以切换回请求支持团队的规则