IIS7下配置最大上传附件大小需要注意什么

IIS7下配置最大上传附件大小需要注意什么

一、相关配置文件的操作

  1. web.config文件配置
    • 在IIS7之前,若要扩大上传限制(如将IIS6默认的4M附件上传大小扩大到50M),可在web.config中进行配置。在IIS7中,除了这样的配置外,还需要注意其他方面。例如设置httpRuntime中的maxRequestLength(单位为KB),像这样:system.webhttpRuntimerequestValidationMode = 2.0maxRequestLength = 51200executionTimeout = 60appRequestQueueLimit = 100//system.web。这里的maxRequestLength表示ASP支持的最大请求大小。不过在IIS7中单独设置这个可能不够,因为IIS7引入了新特性,可能会限制最大上传为30M。
    • 同时,在IIS7下使用web.config配置时,要考虑maxAllowedContentLength的设置,因为支持上传的文件大小根据maxRequestLengthmaxAllowedContentLength中的较小值而定。例如,maxAllowedContentLength指定IIS支持的请求中内容的最大长度,如果这个值小于maxRequestLength设置的值,那么实际能上传的文件大小以maxAllowedContentLength为准。
  2. IIS_schema.xml文件操作
    • 文件权限修改
      • IIS7下的C:\Windows\System32\inetsrv\config\schema\IIS_schema.xml文件对上传附件大小限制有影响,但此文件默认是只读的,即使使用管理员权限也不能直接修改。首先要修改文件的权限,具体操作为:右键文件 - 属性 - 安全,选中目标用户(如administrator),点击高级,修改文件所有者(如将TrustedInstaller改为administrator),确定后点击编辑,就可以修改当前用户的权限了,添加写入权限。
      • 当完成对IIS_schema.xml文件的修改后,如果需要还原文件的权限,操作是:右击 - 属性 - 安全 - 高级 - 所有者 - 编辑 - 输入NTSERVICE\TrustedInstaller,检查名称正确后确定即可将文件还原成修改前的权限。
    • 修改配置节点
      • 用记事本打开IIS_schema.xml文件,找到attribute name = maxAllowedContentLength type = uint defaultValue = 30000000这个配置节点,将defaultValue = 30000000修改为想要的值(如扩大到50M对应的数值),保存后重启IIS即可改变上传附件大小限制。这里的defaultValue的值就是限制上传文件大小的值,修改它可以调整最大上传附件的大小。

二、功能视图中的请求筛选设置

在IIS7中,选中一个虚拟目录,选择功能视图 - 双击请求筛选 - 右键选择编辑功能测试,里面有一项是允许的最大内容长度,默认是30M。如果想要上传大于30M的附件,需要修改此处的设置,并且结合web.config文件中的相关设置(如maxRequestLengthmaxAllowedContentLength)才能成功调整最大上传附件大小。

三、综合考量因素

  1. 数据库配置方面
    • 可能需要对数据库进行一些调整,以支持附件存储。要检查数据库表结构,确保有用于存储附件信息的字段,如ATTACHMENTFILE等。
  2. 性能优化方面
    • 考虑到大量附件可能对系统性能的影响,可以考虑采用云存储服务或内容分发等方式来优化性能。在配置最大上传附件大小后,要进行详尽的测试,包括上传不同类型的文件,检查文件大小限制,以及不同浏览器和设备的兼容性。
本篇文章所含信息均从网络公开资源搜集整理,旨在为读者提供参考。尽管我们在编辑过程中力求信息的准确性和完整性,但无法对所有内容的时效性、真实性及全面性做出绝对保证。读者在阅读和使用这些信息时,应自行评估其适用性,并承担可能由此产生的风险。本网站/作者不对因信息使用不当或误解而造成的任何损失或损害承担责任。
阅读全文