为什么只有在CentOS 7 vps服务器上的put请求API上我才得到403禁止错误(当get / post运行良好时)?
同一部分在共享托管服务器上和从localhost运行都很好。
我正在使用“ Nginx + Varnish + Apache”
每当我尝试执行任何PUT请求时,这就是响应:
禁止 您无权访问此服务器上的/ api / path / to / my / api。
答案 0 :(得分:0)
您将不得不使用POST方法以及_method
= PUT
作为表单数据:
let editUrl ="";
if (this.id) {
this.data._method = 'PUT';
this.data.id = this.id;
editUrl = editUrl + "/" + this.id;
}
axios.post(editUrl, this.data)
.then(resp => {
})
.catch(() => {
});
}
答案 1 :(得分:0)
与GET和POST不同,您必须明确允许对端点的PUT请求。您应该查看您的.htaccess设置。 This question addresses the same concern和this also。
答案 2 :(得分:0)
通过以下条件配置您的apache虚拟主机:
<Limit GET POST PUT OPTIONS>
Require all granted
</Limit>
<LimitExcept GET POST PUT OPTIONS>
Require all denied
</LimitExcept>
也许您的问题解决了。