zoukankan      html  css  js  c++  java
  • 如何禁止DELETE、PUT、OPTIONS、TRACE、HEAD等协议访问应用程序 .

    原文:http://linder.iteye.com/blog/735435

     

    简介

     WebDAV (Web-based Distributed Authoring and Versioning)是基于 HTTP 1.1 的一个通信协议。它为 HTTP 1.1 添加了一些扩展(就是在 GET、POST、HEAD 等几个 HTTP 标准方法以外添加了一些新的方法),使得应用程序可以直接将文件写到 Web Server 上,并且在写文件时候可以对文件加锁,写完后对文件解锁,还可以支持对文件所做的版本控制。这个协议的出现极大地增加了 Web 作为一种创作媒体对于我们的价值。基于 WebDAV 可以实现一个功能强大的内容管理系统或者配置管理系统。
         现在主流的WEB服务器一般都支持WebDAV,使用WebDAV的方便性,呵呵,就不用多说了吧,用过VS.NET开发ASP.NET应用的朋友就应该知道,新建/修改WEB项目,其实就是通过WebDAV+FrontPage扩展做到的,下面我就较详细的介绍一下,WebDAV在tomcat中的配置。

    如何禁止DELETE、PUT、OPTIONS、TRACE、HEAD等协议访问应用程序应用程序呢?

    解决方法

    第一步:修改应用程序的web.xml文件的协议

    Xml代码  收藏代码
    1. <?xml version="1.0" encoding="UTF-8"?>  
    2. <web-app xmlns="http://java.sun.com/xml/ns/j2ee"  
    3.     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  
    4.     xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"  
    5.     version="2.4">  

    第二步:在应用程序的web.xml中添加如下的代码即可

    Xml代码  收藏代码
    1.   <security-constraint>  
    2.    <web-resource-collection>  
    3.       <url-pattern>/*</url-pattern>  
    4.       <http-method>PUT</http-method>  
    5. <http-method>DELETE</http-method>  
    6. <http-method>HEAD</http-method>  
    7. <http-method>OPTIONS</http-method>  
    8. <http-method>TRACE</http-method>  
    9.    </web-resource-collection>  
    10.    <auth-constraint>  
    11.    </auth-constraint>  
    12.  </security-constraint>  
    13.  <login-config>  
    14.    <auth-method>BASIC</auth-method>  
    15.  </login-config>  

     重新部署程序,重启tomcat即可完成

    如果用户要验证既可以将POST和GET也添加在其中,重新部署并启动tomcat即可看到效果

    以上的代码添加到某一个应用中,也可以添加到tomcat的web.xml中,区别是添加到某一个应用只对某一个应用有效如果添加到tomcat的web.xml中,则对tomcat下所有的应用有效。

    关于web.xml的详细配置见

    http://www.blogjava.net/baoyaer/articles/107428.html

  • 相关阅读:
    使用 Spring data redis 结合 Spring cache 缓存数据配置
    Spring Web Flow 笔记
    Linux 定时实行一次任务命令
    css js 优化工具
    arch Failed to load module "intel"
    go 冒泡排序
    go (break goto continue)
    VirtualBox,Kernel driver not installed (rc=-1908)
    go运算符
    go iota
  • 原文地址:https://www.cnblogs.com/firstdream/p/5955271.html
Copyright © 2011-2022 走看看