| 这个问题困扰我整整两天了,今天凌晨2:48分终于解决了,呵呵。目前自己的论坛也做的有一个段落了,今天晚上准备还在公司休息,明天上午再回家睡会。因为的白天大家都来了我没有办法在公司睡了。
1 {; s' \3 J$ q# [好了说下我给大家整理的方案吧。我也是这个问题,这安装了DZ没有办法上传2M以上的附件。4 c, `$ s$ h: m) _# ^
总是传一个文件传了半天,也不见附件,明显的传不上去 。
2 Y+ S* i: [4 i! S, ]最后总会出现这个提示:您的请求来路不正确或验证字串不符,无法提交。如果您安装了某种默认屏蔽来路信息的个人防火墙软件(如 Norton Internet Security),请设置其不要禁止来路信息后再试。1 ~9 e) i _$ {, Q+ R
4 {* B% V( v. F. k% c9 h4 ~
第一,我首先是百度了下,得道答案:
( ~2 ?; k8 _. p& {; z1. 选项 => Norton Internet Security => Web内容 => 浏览站点的信息 => 选择 "允许"(默认是"禁止")$ ~- i0 d/ Y; \2 w. N% c* z
2. 禁止广告 => 配置(在窗口右下方) => 取消"启用禁止广告"的复选框
4 \5 [; |$ k! w+ x3 h ?3 Y/ t, u" e7 p6 |) p3 ]& [# o
我的服务器里没有装Norton 所以也就不会是这个问题。
2 s; z5 h' f0 W6 ?( A* Z/ ~# T
$ T/ J: ?0 s! @% ^第二, 具说是2003系统默认不允许传大于200KB的文件( I7 {, X. {' L6 G' z( M
# K1 X# E; v0 k4 X# \我又对系统做了以下设置:% e* {& Q5 x/ ^4 l& A& P
A,-------------------------------------修改2003系统不支持上传大于200KB的文件方法-------------------------
5 @# R. @+ N# P, d- t& ?* W4 q) G: ?
进行这两样设置都需要先关闭IIS服务,如果不会关闭可以在DOS命令符下输入 iisreset /stop 命令来关闭# U, X- Z* M0 {8 w6 `! y
然后找到 C:\windows\system32\inesrv\metabase.xml 文件,使用记事本等工具打开此文件(没有关闭IIS时,此文件为只读)
5 I! K4 @& {7 P% w查找ASPMaxRequestEntityAllowed,默认值为6 V/ Y' ?* f' {: W7 _
AspMaxRequestEntityAllowed="204800"+ r1 b6 s7 n- B# L' r& [) ]- n0 K
改为
! l* V8 }- }0 s% R" ~9 yAspMaxRequestEntityAllowed="20480000"* |# o. M+ ]% V1 x2 P+ y2 V
这样可以将默认最大允许上传的200K改为20M,同理,再来修改下载限制,查找AspBufferingLimit( o4 ^: }! h2 G* l b+ i8 d1 X+ C
默认值为8 _7 `6 a( R6 S2 B O
AspBufferingLimit="4194304"
% J+ O/ ^- Z% X# r5 P改为
: t6 e, }2 X6 L% E# ~3 D; VAspBufferingLimit="20480000"
! A& z: |$ x! b8 _+ T9 m$ y设置由默认最大允许下载的4M附件改为20M,设置完成后,重启IIS服务,也可以在DOS命令符下输入 iisreset /start 来重启。" [' z2 h1 ~7 Q' V! @5 |
# w# q) h# M/ d: W a1 aA,-------------------------------------修改2003系统不支持上传大于200KB的文件方法-------------------------1 I1 L3 e/ g! i) o8 f# G
# B' ?7 F0 m( X& W
原想着这下就好了,可是等我怀着崇高的理想去再次发布附件的时候,问题还是再次出现。2 ~) {/ h5 H o2 p" {
还是不能上传大于2M的文件, 我去了google.里搜,关健词是:“DZ里的上传许可2M 更改”,得到如下修改方案:# Z/ I: P* @: w( M
4 C: f/ L; @0 q6 ~8 J: c$ l: X6 BB,-----------------------------------------PHP,DZ修改上传大于2M 详细方案------------------------------------------------------------4 L, g6 Y. t2 V! N: p
4 r% y* A/ T9 E+ c+ [0 p
PHP里如何正确调整上传附件大小限制.
5 ]8 I. s9 p1 E1 N9 L需要在PHP.ini里设置以下几项:( t8 |: B1 u- a8 p
1. post_max_size =10M 6 p5 @4 _/ g0 @0 L
表单提交最大数据为10M.此项不是限制上传单个文件的大小,而是针对整个表单的提交数据进行限制的.
5 W; i) F. @& K' h# x限制范围包括表单提交的所有内容.例如:发表贴子时,贴子标题,内容,附件等...
& M6 A/ L1 \9 ?! k) \2.file_uploads = On
* j" V9 u8 Q' o/ c是否允许上传文件,如果为OFF您将不能上传文件.6 ?' t" `4 ] X1 W$ {
3.upload_tmp_dir = "D:/APM/PHP/uploadtemp/"
7 d# l; I k( d上传文件时系统使用的缓存目录.如果此目录所在磁盘空间不足的话您将不能上传文件.
: K- A) L" r! f$ J; `4.upload_max_filesize =2M
/ A9 |" E# H: A5 v1 E4 ?( T最大上传文件大小,此项针对上传文件时单个文件的大小.- X# p( E) K6 i, s+ x
+ C+ ?0 W* S) \& H& J
与post_max_size之间的关系:
. V6 z4 E" o+ X5 a5 L* ?" Y在论坛发表贴子时,您post_max_size 设为10M,而此项设成了2M,那么您只能上传最大为2M的附件,且可以同时上传5个.2 P0 r. l; N# \3 @, z7 |
1 E) Q4 B! a4 D% i" O$ J特别要注意:很多人遇到修改php.ini后重应WEB服务后仍然不能生效.这种情况应该先确认一下所改的php.ini是不是当前PHP所使用的.(我本人就是吃这个大亏,搞了半天php.ini 修改错了,多耽误好几个小时,说出来想哭,,,,,)# s- _9 ` i: z% V$ g
$ N. k, _/ u1 i; s, r# l9 `, k
您可以在WEB目录下建立一个php文件,内容很简单就一句话
# y2 }! ]: ?% X$ k- K" `<?php- k) a7 O$ c& H1 f
phpinfo();9 L2 @& }3 p* ]/ j; ~
?>
- h H* n/ T# w/ r3 M4 O浏览器中查看此文件, Configuration File (php.ini) Path 此项对应的就是您的PHP当前正在使用的php.ini文件了.
* t3 l8 b( X3 j6 N1 m0 y
* T( P6 _) _; Z) j( w% F- J uB,---------------------------PHP,DZ修改上传大于2M 详细方案--------------------------------------------
9 W+ X! V! T$ C) v- H! Q: }/ B1 B: e# c" f, \! Z4 u
这个也是我这两天来的遇到的问题吧,不遇到问题好说,遇到了问题就把他给解决了,不然问题会越积越多的,这也许就是大笨象的笨处吧,以防还有更多的朋友走我的老路,只要是能看完我这遍文章的朋友,应该就会很快的搞这定2003系统,PHP,DZ,上传文件限制的问题了。
$ m: s1 B- U! ~* b2 ^0 U: O( X- q1 M! m
好了,睡觉去了,明天还要上班,MD该死的DZ。。。。。嘿嘿
# P0 z- f3 F: v2 U( r4 u; w7 P+ Y# P1 [: b; P) v3 B+ c* g! m
------------------------------------------------------------------------------------ | |