加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

配置tomcat支持http delete和put的方法

(2012-05-19 16:20:42)
标签:

tomcat

http

delete

put

杂谈

分类: J2EE
WebDAV(Web-based Distributed Authoring and Versioning)是基于 HTTP 1.1 的一个通信协议。它为 HTTP 1.1 添加了一些扩展(就是在 GET、POST、HEAD 等几个 HTTP 标准方法以外添加了一些新的方法),使得应用程序可以直接将文件写到 Web Server 上,并且在写文件时候可以对文件加锁,写完后对文件解锁,还可以支持对文件所做的版本控制。这个协议的出现极大地增加了 Web 作为一种创作媒体对于我们的价值。基于 WebDAV 可以实现一个功能强大的内容管理系统或者配置管理系统。

方法:

PUT,向指定的目录上传附加文件;

DELETE,删除指定的资源;

COPY,将指定的资源复制到Destination消息头指定的位置;

MOVE,将指定的资源移动到Destination消息头指定的位置;

SEARCH,在一个目录路径中搜索资源。

PROPFIND,获取与指定资源有关的信息,如作者、大小与内容类型。

TRACE,在响应中返回服务器收到的原始请求。可以使用这种方法避开阻止跨站点脚本的防御。

在tomcat5.5支持http delete和put的方法:

在tomcat web.xml文件中配置org.apache.catalina.servlets.DefaultServlet的 

  1. <init-param>   
  2.    <param-name>readonly</param-name>   
  3.    <param-value>false</param-value>   
  4. </init-param>
  5. readonly参数默认是true,即不允许delete和put操作,所以通过XMLHttpRequest对象的put或者delete方法访问就会报告http 403错误。为REST服务起见,应该设置该属性为false。
  6. 如下:
  7. <servlet>
      72         <servlet-name>default</servlet-name>
      73         <servlet-class>org.apache.catalina.servlets.DefaultServlet</servlet-class>
      74         <init-param>
      75             <param-name>debug</param-name>
      76             <param-value>0</param-value>
      77         </init-param>
      78         <init-param>
      79             <param-name>readonly</param-name>
      80             <param-value>true</param-value>
      81         </init-param>
      82         <init-param>
      83             <param-name>listings</param-name>
      84             <param-value>false</param-value>
      85         </init-param>
      86         <load-on-startup>1</load-on-startup>
      87     </servlet>

apache2.2设置禁止使用http delete和put

<Location />
<LimitExcept GET HEAD POST>
  Order Allow,Deny
  Deny from all
</LimitExcept>
</Location>

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有