我现在做了一个小项目,有的信息可以进行html编辑,所以必然会输入特殊字符,没发布到iis虚拟目录前在本地运行不报错,前提是在配置加了validateRequest="false"属性;现在发布到虚拟目录上面了,但是validateRequest="false"不起作用!做html编辑的话会引发表单验证异常!!!是什么问题啊!有没有这方面的解决办法!需要html编辑的内容也有经过html编码,还是会发生异常!!!关键点:在本地独立程序运行没问题,配置到iis上面就出错了,可能iis还有哪些方面没配置到吧,求9999999999999999

解决方案 »

  1.   

    忘记写了,我vs2010  asp.net 4.0版本
      

  2.   

    改页面头呢<%@  Page  validateRequest="false"    %>    参考
      

  3.   

    我解决了,在IIS虚拟目录属性中选择asp.net的版本为2.0的就OK了,我原来选的是4.0版本,!! 
    还想请教下就是你们在做那种有html文本编辑内容的项目时是怎么解决表单验证问题的,在配置加validateRequest="false" 冒失很不安全,容易被脚本攻击
      

  4.   

    html编辑器差不多都会遇见这个问题
      

  5.   

    文本编辑的时候才用到validateRequest="false" ,你可以使用Mvc2或者语句都使用linq,这样不容易被攻击!
      

  6.   

    在页面级别(aspx中)设置
    ValidateRequest="false"
    或者
    在全局级别(Web.config中)设置
    <configuration>
      <system.web>
      <pages validateRequest="false">
    以上设置仅对ASP.NET4.0以下有效。在ASP.NET4.0版本上
    在全局级别(Web.config中)设置
    <configuration>
      <system.web>
      <httpRuntime requestValidationMode="2.0">