航空论坛_航空翻译_民航英语翻译_飞行翻译
标题:
C#.Net上传文件大小限制设置[1]
[打印本页]
作者:
航空
时间:
2010-5-4 01:09:52
标题:
C#.Net上传文件大小限制设置[1]
net中默只能上传小于4m的文件,大于4M将无法显示页面.那么如何设置来使imputfile能上传更大的文件呢,
. w! W' p$ B2 {; S% x& J! q
' o( T: c+ L( L- O7 N' r
$ K5 W2 i7 \: E
' H5 F4 h! w; o
1,环境:window 2003 ,IIS6.0
) u" Q6 `- Y; h& g
* z6 T+ D. v! w$ B
要首先要修改IIS6.0中的asp请求的最大字节数,默认时为200K;
& W7 Z9 G& y3 Y' [) Y" A1 E4 j
方法:打开位于 C:\Windows\System32\Inetsrv 中的 metabase.XML,
1 s8 D# f+ b# q7 K. Z7 [: p+ m. e
并修改 AspMaxRequestEntityAllowed 为你需要的值(例如 "1073741824", 1GB);
' ?. g; M U% x" ^$ B% W
% {4 E: C) y9 @/ T) U; c
技术背景:
2 Q) h& }) f# `- B$ u. k
在 IIS 6.0 中, AspMaxRequestEntityAllowed 属性指定了一个 ASP 请求(Request)可以使用的最大字节数. 如果 Content-Length 头信息中包含的请求长度超过了 AspMaxRequestEntityAllowed 的值, IIS 将返回一个 403 错误信息.
" B* l7 D) v" _6 i6 i0 T; H- z8 A
这个属性值与 MaxRequestEntityAllowed 相似, 但是是针对 ASP 请求的. 假如你知道自己的 ASP 应用只需要处理很少的请求数据, 你可以在 World Wide Web Publishing Service (WWW 发布服务)层级设定全局的 MaxRequestEntityAllowed 属性为 1MB, 并单独设定 AspMaxRequestEntityAllowed 为一个较小的值.
" w/ C- P5 ]' y7 m V
. h. L" B3 {! O8 w" ]' C0 k
注意: 在编辑文件前请停止 IIS 服务, 否则无法保存修改后的文件.
' V1 j' |; ~4 A. j
/ s9 E. C) ?9 y' w" V0 ]& S. X. f' G1 \
也可以那么解决:
0 O+ r! c: B* u* L
到微软站点载了IIS6 Resource Kit Tools(
http://www.microsoft.com/downloa ... DE629C89499&
;displaylang=en),安装后利用Metabase Explorer修改了(local)\LM\W3SVC\AspMaxRequestEntityAllowed属性(默认为200K=204800),修改为1G就是了;同时修改了AspScriptTimeout属性调整下时限,就可以上传大文件了。
8 i$ {; F" a, ~
! w$ v$ C ~5 e0 W: s
% Y4 {" F+ h9 i' `0 e
2,.net中
0 O. k/ ^* z& w' a
; {; z1 m4 d, T8 U- V0 I* C* n0 |* h
(1)在web.comfig文件中添加一个httpRuntime主键
, M( j6 F# Z% J1 A$ j
/ ?' x# \/ m, H3 U# z& ?
<httpRuntime executionTimeout="90" maxRequestLength="40960" useFullyQualifiedRedirectUrl="false"
6 H" F2 ?4 |! Y4 F- G2 a1 f+ O2 s$ i
minFreeThreads="8" minLocalRequestFreeThreads="4" appRequestQueueLimit="100"/>
3 ?8 \! S1 M% p* }
4 O3 l- m7 H1 M- d
maxRequestLength="40960" 是最大的请求数,单位为:K
5 ^ n3 b& Y( X
4 b% T4 J" ~" f% e. z5 e
(2)修改C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\CONFIG\machine.config文件
: {8 I( g' p9 s7 C
, a; z9 L7 U8 x4 `8 ?; R+ M
<httpRuntime executionTimeout="190" maxRequestLength="40960"
" D. _* J7 w+ x% |% i% J& L+ @ y
2 ^+ i: j# k8 b6 E
maxRequestLength="40960" 是最大的请求数,单位为:K
2 s0 j0 L" y1 }3 O" q* H$ _$ f
0 H& }5 ]) x6 r- @6 u, h' a
经实验,(1)和(2)只要一个就可以。
欢迎光临 航空论坛_航空翻译_民航英语翻译_飞行翻译 (http://bbs.aero.cn/)
Powered by Discuz! X2