为了账号安全,请及时绑定邮箱和手机立即绑定

为什么我的Web服务器软件不允许PUT和DELETE请求?

为什么我的Web服务器软件不允许PUT和DELETE请求?

慕盖茨4494581 2019-12-03 16:35:31
我正在尝试实现REST协议,并且已经实现了尝试调试Web服务器不允许PUT请求的实现。我已经通过运行测试并进一步确认了这一点:curl -X PUT  http://www.mywebserver.com/testpage对于我的Web服务器,哪个返回403- Forbidden错误。对于DELETE,也一样POST,GET一切都很好。我想知道这是使用REST的人遇到的常见问题吗,可能的解决方法是什么?我可以对.htaccess文件进行简单的更改吗?还是我需要修改协议以在POST查询字符串中设置隐藏变量“ _method”?
查看完整描述

1 回答

?
哔哔one

TA贡献1854条经验 获得超8个赞

通常,Web服务器将被配置为阻止除GET和POST之外的任何内容,因为99%的时间都是它们所需要的,并且过去应用程序存在问题,假设请求是这两个请求之一。


您没有说它是哪台服务器,但是,例如,您可以通过指令告诉Apache允许使用哪些方法:


例如:


<Limit POST PUT DELETE>

  Require valid-user

</Limit>

听起来好像有些有用的系统管理员已使用它来阻止非GET / POST


您可以尝试.htaccess使用


<Limit GET POST PUT DELETE>

  Allow from all

</Limit>

(我不是Apache的专家,这可能并不完全正确)


查看完整回答
反对 回复 2019-12-03
  • 1 回答
  • 0 关注
  • 2223 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信