iis上传文件限制
㈠ 如何解决IIS7上传文件大小限制
IIS对上传文件大小有限制,IIS7 默认文件上传大小是30M,要李答突破这个限制需要做一下修改:
1.打开 %windir%\system32\inetsrv\config\applicationhost.config 找到: <requestFiltering>节点
这个节点默认没有 <requestLimits maxAllowedContentLength="上传大小的雀扰返值(单位:byte)" /> 元素,IIS 7和IIS 7.5上测试过 最大值只能是<requestLimits maxAllowedContentLength="4294967295" /> <4GB,
为这个节点新增如下事例元素:<requestLimits maxAllowedContentLength="2147483647" /> ,上传的大小将改为2G
注意:%windir%\system32\inetsrv\config\applicationhost.config 文件一定不要用其他机器的文件替换,否则IIS将无法启动 此文件记录了,当前IIS中所有Site , App pool的信息,还有一些与机器相关的配置。
2.修改web.config
<system.web>
<httpRuntime executionTimeout="36000" maxRequestLength="2097151"/>
<!--maxRequestLength:上传的大小,单位K ,executionTimeout:设置超时时间,单位:秒。(默认是90秒) -->
<顷饥/system.web>
3.web.config下如果有如下节点(此节点是为IIS 7设计的) ,则修改:
<requestLimits maxAllowedContentLength="2147483647" /> 单位与applicationhost.config中的<requestLimits maxAllowedContentLength="2147483647" />一致,它的最大值也只能为4294967295<system.webServer>
<security>
<requestFiltering>
<requestLimits maxAllowedContentLength="2147483647" />
</requestFiltering>
</security>
</system.webServer>
㈡ IIS上传不了文件是咋回事呀。兄嘚
500错误范围太广,建议你先做简单上传测试(文件大小低于20kb),看是否出错,如果这样都出错那说明是你代码问题或者组件问题,你可以看看资源是否传到指定位置,如果传到了,说明上传功能未出错,其他代码错了.
PS:你在iis里面设置限制文件上传大小了没有
win2003的iis6限制了asp的上传文件大小为200k,aspx的上传程序没有影响
1、先勾选IIS设置中的选项:IIS服务器属性-->允许直接编辑配置数据库
2、在服务里关闭iis admin service服务.
3、找到windows\system32\inesrv\下的metabase.xml
打开,找到ASPMaxRequestEntityAllowed 把他修改为需要的值 ,默认为204800,即200K
然后重启iis admin service服务。
㈢ asp在IIS里为什么只能上传小于200K的文件
这个是服务器有个文件限制了。在程序里是提高不过200K以上的。
以下是怎么提高上传的大小限制。
2003解决IIS限制上传、下载文件大小及metabase.xml修改
1.停止IIS Admin Service服务。 2.按照如下的路径找到文件:系统盘(C:)Windows System32 inetsrv MetaBase.xml, 在该文件中搜索AspMaxRequestEntityAllowed,设置为你想要的数字(默认204800即200K)。 3.重新启动IIS Admin Service服务。
默认情况下,在IIS 6 全局配置中允许上传的文件长度最大为4 GB,但是在Web站点级却限制了ASP应用程序上传的最大文件长度为200 KB。如果你需要上传超过200KB的文件,则需要手动修改IIS的metabase.xml中对应Web站点的AspMaxRequestEntityAllowed属性。
metabase.xml位于"systemroot"\system32\inetsrv"目录下,用于保存IIS的基本配置信息。默认情况下IIS是不允许你直接对metabase.xml进行编辑的,你可以通过以下两种方式来实现:
1 停止IISAdmin服务后再编辑;
停止IIS服务与启动IIS服务的方法,在CMD命令行模式下输入以下命令:
1. net stop w3svc (停止IIS服务)
2. iisreset /stop
2 在IIS管理控制台中右击服务器名,选择属性,然后在弹出的服务器属性对话框中勾选允许直接编辑配置数据库,再点击确定即可
然后在任何文本编辑器中打开Metabase.xml文件,修改对应Web站点的AspMaxRequestEntityAllowed属性即可,它的单位是字节,默认是204800,改为你需要的值即可。比如改为最大上传20M,则修改此值为:20480000.如果实在不知道20M换成字节是多大,就用这个公式计算一下再修改吧:1024000*20(102400是100K,1024000是1M,以此类推,20M就是1024000*20=20480000)
3 编辑完记得重启IIS服务
1. net start w3svc (启动IIS服务)
2. iisreset /start
再加上下载不能超过4M的解决办法:
在 IIS 6.0 中,无法下载超过4M的附件时,可以按以下步骤解决:
1、先在服务里关闭 iis admin service 服务。
2、找到 windows\system32\inesrv\ 下的 metabase.xml 文件。
3、用纯文本方式打开,找到 AspBufferingLimit 把它修改为需要的值(可修改为20M即:20480000)。
4、存盘,然后重启 iis admin service 服务。
MetaBase.xml是要求很严格的文件,,修改参数或格式一出错就会无法使用,,修改前最好备份,,如果忘了备份,修改又出错,, 还有补救方法:metabase.xml所在的目录下还有个history目录,里面存放的是metabase.xml文件在各个时间的备份。至此,解决办法也有了,就是从history目录下拷贝一份到inetsrv目录即可(但这样只能修回备份时间前的资料)。如果目录或文件没有就要到别的机拷一份过来,但是这样原先的配置就没了。
㈣ 基于IIS搭建服务器如何设置权限上传文件到服务器
首先 要保证你的磁盘的格式是 ntfs格式的
你可以 点 文件夹上的-- 工具--文件夹选项-- 查看--使用简单文件共享前面的钩去掉。
然后 在 iis指向的文件夹上 点右键 属性--安全---可以设置不同用户的 读写权限。。。
另外上传文件 你可能需要装一些ftp服务,比如装个serv-u软件或者iis自带的也可以,用来指向这个设置了权限的目录
NTFS权限
首先我们要知道:只要是存在NTFS磁盘分区上的文件夹或文件,无论是否被共享,都具有此权限。此权限对于使用FAT16/FAT32文件系统的文件与文件夹无效! NTFS权限有两大要素:一是标准访问权限;二是特别访问权限。前者将一些常用的系统权限选项比较笼统地组成6种"套餐型"的权限,即:完全控制、修改、读取和运行、列出文件夹目录、读取、写入。 在大多数的情况下,"标准权限"是可以满足管理需要的,但对于权限管理要求严格的环境,它往往就不能令管理员们满意了,如只想赋予某用户有建立文件夹的权限,却没有建立文件的权限;如只能删除当前目录中的文件,却不能删除当前目录中的子目录的权限等......这个时候,就可以让拥有所有权限选项的"特别权限"来大显身手了。也就是说,特别权限不再使用"套餐型",而是使用可以允许用户进行"菜单型"的细节化权限管理选择了。 那么如何设置标准访问权限呢?以对一个在NTFS分区中的名为"guo"的文件夹进行设置标准访问权限为例,可以按照如下方法进行操作: 因为NTFS权限需要在资源属性页面的"安全"选项卡设置界面中进行,而Windows XP在安装后默认状态下是没有激活"安全"选项卡设置功能的, 所以需要首先启用系统中的"安全"选项卡。方法是:依次点击"开始"→"设置"→"控制面板 ",双击"文件夹选项",在"查看"标签页设置界面上的"高级设置"选项列表中清除"使用简单文件共享(推荐)"选项前的复选框后点击"应用"按钮即可。 设置完毕后就可以右键点击"guo" 文件夹,在弹出的快捷菜单中选择"共享与安全",在"guo属性"窗口中就可以看见"安全"选项卡的存在了。针对资源进行NTFS权限设置就是通过这个选项卡来实现的,此时应首先在"组或用户名称"列表中选择需要赋予权限的用户名组(这里选择"zhong"用户),接着在下方的"zhong 的权限"列表中设置该用户可以拥有的权限即可。 下面简单解释一下六个权限选项的含义: ①完全控制(Full Control): 该权限允许用户对文件夹、子文件夹、文件进行全权控制,如修改资源的权限、获取资源的所有者、删除资源的权限等,拥有完全控制权限就等于拥有了其他所有的权限; ②修改(Modify): 该权限允许用户修改或删除资源,同时让用户拥有写入及读取和运行权限; ③读取和运行(Read & Execute): 该权限允许用户拥有读取和列出资源目录的权限,另外也允许用户在资源中进行移动和遍历,这使得用户能够直接访问子文件夹与文件,即使用户没有权限访问这个路径; ④列出文件夹目录(List Folder Contents): 该权限允许用户查看资源中的子文件夹与文件名称; ⑤读取(Read): 该权限允许用户查看该文件夹中的文件以及子文件夹,也允许查看该文件夹的属性、所有者和拥有的权限等; ⑥写入(Write): 该权限允许用户在该文件夹中创建新的文件和子文件夹,也可以改变文件夹的属性、查看文件夹的所有者和权限等。 如果在"组或用户名称"列表中没有所需的用户或组,那么就需要进行相应的添加操作了,方法如下:点击"添加"按钮后,在出现的"选择用户和组"对话框中,既可以直接在"输入对象名称来选择"文本区域中输入用户或组的名称(使用"计算机名\用户名"这种方式),也可以点击"高级"按钮,在弹出的对话框中点击" 立即查找"按钮让系统列出当前系统中所有的用户组和用户名称列表。此时再双击选择所需用户或组将其加入即可。 如果想删除某个用户组或用户的话,只需在" 组或用户名称"列表中选中相应的用户或用户组后,点击下方的"删除"按钮即可。但实际上,这种删除并不能确保被删除的用户或用户组被拒绝访问某个资源,因此,如果希望拒绝某个用户或用户组访问某个资源,还要在"组或用户名称"列表中选择相应的用户名用户组后,为其选中下方的"拒绝"复选框即可。 那么如何设置特殊权限呢?假设现在需要对一个名为"guo"的目录赋"zhong"用户对其具有"读取"、"建立文件和目录"的权限,基于安全考虑,又决定取消该账户的"删除"权限。此时,如果使用"标准权限"的话,将无法完成要求,而使用特别权限则可以很轻松地完成设置。方法如下: 首先,右键点击"guo"目录,在右键快捷菜单中选择"共享与安全"项,随后在"安全"选项卡设置界面中选中"zhong"用户并点击下方的"高级"按钮,在弹出的对话框中点击清空"从父项继承那些可以应用到子对象的权限项目,包括那些在此明确定义的项目"项选中状态,这样可以断开当前权限设置与父级权限设置之前的继承关系。在随即弹出的" 安全"对话框中点击"复制"或"删除"按钮后(点击"复制"按钮可以首先复制继承的父级权限设置,然后再断开继承关系),接着点击"应用"按钮确认设置,再选中"zhong"用户并点击"编辑"按钮,在弹出的"zhong的权限项目"对话框中请首先点击"全部清除"按钮,接着在"权限"列表中选择"遍历文件夹/运行文件"、"列出文件夹/读取数据"、"读取属性"、"创建文件/写入数据"、"创建文件夹/附加数据"、"读取权限"几项,最后点击"确定"按钮结束设置。 在经过上述设置后,"zhong"用户在对"guo"进行删除操作时,就会弹出提示框警告操作不能成功的提示了。显然,相对于标准访问权限设置 上的笼统,特别访问权限则可以实现更具体、全面、精确的权限设置。 为了大家更好地理解特殊权限列表中的权限含义,以便做出更精确的权限设置,下面简单解释一下其含义: ⑴遍历文件夹/运行文件(Traverse Folder/Execute File): 该权限允许用户在文件夹及其子文件夹之间移动(遍历),即使这些文件夹本身没有访问权限。 注意:只有当在"组策略"中("计算机配置 "→"Windows设置"→"安全设置"→"本地策略"→"用户权利指派")将"跳过遍历检查"项授予了特定的用户或用户组,该项权限才能起作用。默认状态下,包"Administrators"、"Users"、"Everyone"等在内的组都可以使用该权限。 对于文件来说,拥了这项权限后,用户可以执行该程序文件。但是,如果仅为文件夹设置了这项权限的话,并不会让用户对其中的文件带上"执行"的权限; ⑵列出文件/读取数据(List Folder/Read Data): 该权限允许用户查看文件夹中的文件名称、子文件夹名称和查看文件中的数据; ⑶读取属性(Read Attributes): 该权限允许用户查看文件或文件夹的属性(如系统、只读、隐藏等属性); ⑷读取扩展属性(Read Extended Attributes): 该权限允许查看文件或文件夹的扩展属性,这些扩展属性通常由程序所定义,并可以被程序修改; ⑸创建文件/写入属性(Create Files/Write Data): 该权限允许用户在文件夹中创建新文件,也允许将数据写入现有文件并覆盖现有文件中的数据; ⑹创建文件夹/附加数据(Create Folder/Append Data): 该权限允许用户在文件夹中创建新文件夹或允许用户在现有文件的末尾添加数据,但不能对文件现有的数据进行覆盖、修改,也不能删除数据; ⑺写入属性(Write Attributes): 该权限允许用户改变文件或文件夹的属性; ⑻写入扩展属性(Write Extended Attributes): 该权限允许用户对文件或文件夹的扩展属性进行修改; ⑼删除子文件夹及文件(Delete Subfolders and Files): 该权限允许用户删除文件夹中的子文件夹或文件,即使在这些子文件夹和文件上没有设置删除权限; ⑽删除(Delete): 该权限允许用户删除当前文件夹和文件,如果用户在该文件或文件夹上没有删除权限,但是在其父级的文件夹上有删除子文件及文件夹权限,那么就仍然可以删除它; ⑾读取权限(Read Permissions): 该权限允许用户读取文件或文件夹的权限列表; ⑿更改权限(Change Permissions): 该权限允许用户改变文件或文件夹上的现有权限; ⒀取得所有权(Take Ownership): 该权限允许用户获取文件或文件夹的所有权,一旦获取了所有权,用户就可以对文件或文件夹进行全权控制。 这里需要单独说明一下"修改"权限与"写入 "权限的区别:如果仅仅对一个文件拥有修改权限,那么,不仅可以对该文件数据进行写入和附加,而且还可以创建新文件或删除现有文件。而如果仅仅对一个文件拥有写入权限,那么既可以对文件数据进行写入和附加,也可以创建新文件,但是不能删除文件。也就是说,有写入权限不等于具有删除权限,但拥有修改权限,就等同于拥有删除和写入权限。
㈤ 更改iis上传文件的默认大小
如果是ASP或.net的
第一步:修改IIS设置,允许直接编辑配置数据库。先打开,Internet信息服务
第二步:先在服务里关闭iis admin service服务,找到windows\system32\inetsrv\下的metabase.xml, 打开,找到ASPMaxRequestEntityAllowed 把他修改为需要的值,默认为204800,即200K,如把它修改为102400000(100M)。
然后重启iis admin service服务。
办法二:
新建一个文本文件,内容如下:
set providerObj=GetObject("winmgmts:/root/MicrosoftIISv2")
set vdirObj=providerObj.get("IIsWebVirtualDirSetting='W3SVC/1/ROOT'")
WScript.Echo "Before: " & vdirObj.AspMaxRequestEntityAllowed
vdirObj.AspMaxRequestEntityAllowed=102400000
vdirObj.Put_()
WScript.Echo "Now: " & vdirObj.AspMaxRequestEntityAllowed
然后保存为.vbs文件,如:vf.vbs
然后在命令行模式下,执行 cscript 文件路径及文件名,如:cscript d:\vf.vbs
这样ASP上传大小就更改为了上面设置的:102400000字节 (100兆)
关于win2003上传限制解决方案的补充说明
到微软站点载了IIS6 Resource Kit Tools(http://www.microsoft.com/downloads/details.aspx?FamilyID=56FC92EE-A71A-4C73-B628-ADE629C89499&displaylang=en),安装后利用Metabase Explorer修改了(local)\LM\W3SVC\AspMaxRequestEntityAllowed属性(默认为200K=204800),修改为1G就是了;同时修改了AspScriptTimeout属性调整下时限,就可以上传大文件了。
此时发现AspMaxRequestEntityAllowed丢之,点右键添加new属性为asp,设置自己需要的大小,然后确定即可~~~
如果是php的
打开php.ini,首先找到
file_uploads = on ;是否允许通过HTTP上传文件的开关。默认为ON即是开
upload_tmp_dir ;文件上传至服务器上存储临时文件的地方,如果没指定就会用系统默认的临时文件夹
upload_max_filesize = 8m ;望文生意,即允许上传文件大小的最大值。默认为2M
post_max_size = 8m ;指通过表单POST给PHP的所能接收的最大值,包括表单里的所有值。默认为8M
一般地,设置好上述四个参数后,上传<=8M的文件是不成问题,在网络正常的情况下。
但如果要上传>8M的大体积文件,只设置上述四项还一定能行的通。
更多请关注:
http://www.chenyu.me/read-htm-tid-6320-fpage-2.html