在2003 Server上用无忧上传出现的奇怪问题(不是200K限制及文件写权限的原因)

CodeBunny 2005-03-29 11:04:41
在XP上写的一个网站,其中用到了无忧上传的修改版(天地孤星2.0)——其实主要部分是相同的,他只是做了不多的改动,所以仍然可以看作是纯粹的无忧上传。

在本机调试时一切正常,但放到新做的服务器上(装了OFFICE、SQL SERVER 2000)时发现到用ADO向硬盘写时就报错。(文件大小小于200K) 具体错误记不太清了,好象是写入禁止之类的。

一开始以为是IIS在该文件夹中没有写权限,但给EVERYONE都加上写权限了(包括IUser_等两个IIS专用账号)还是报同样的错误。

而把该站点放到另外一台日文2003下上传却一点问题没有。

又在另外一台机器上重做了系统,装2003企业版(上海政府破解版)、Office、SQLSERVER 2000发现问题相同!!!

我快郁闷死了,哪位老大帮下忙呀!!


Public Function SaveAsFile(FullPath)
Dim dr, ErrorChar, i
Dim arrTemp(65535)
SaveAsFile = True
If Trim(FullPath) = "" Or FileStart = 0 Or FileName = "" Or Right(FullPath, 1) = "/" Then Exit Function
Set dr = Server.CreateObject("Adodb.Stream")
dr.Mode = 3
dr.Type = 1
dr.Open
Data_5xsoft.position = FileStart
Data_5xsoft.copyto dr, FileSize
dr.SaveToFile FullPath, 2 ''''出错位置
dr.Close
Set dr = Nothing
SaveAsFile= False
End Function
...全文
262 25 打赏 收藏 转发到动态 举报
写回复
用AI写文章
25 条回复
切换为时间正序
请发表友善的回复…
发表回复
CodeBunny 2005-04-04
  • 打赏
  • 举报
回复
路径是绝对没问题的,我都仔细核对过N次了
孟子E章 2005-04-04
  • 打赏
  • 举报
回复
你打印出来看路径是否错误
CodeBunny 2005-04-04
  • 打赏
  • 举报
回复
周末去看了一下,把错误信息COPY过来了:

——————————————————————
ADODB.Stream 错误 '800a0bbc'

写入文件失败。

D:\WWW.M448.COM\MEMBER\../inc/5xUpload.asp,行 205
——————————————————————

不过比较奇怪的是,用无忧会报这个错误,而朋友建议我用“风声无组件上传”2.08版 在那台2003的服务器上却可以正常上传…… 太奇怪了……
浩飞__ 2005-04-01
  • 打赏
  • 举报
回复
虽然是copy的,但确实能解决问题
lianzy 2005-03-31
  • 打赏
  • 举报
回复
顶,我说我的系统换为2003下怎么上转大于200k的文件就出错,后来换了上转组件也一样,百思不得其解。先谢了。
CodeBunny 2005-03-31
  • 打赏
  • 举报
回复
晕,都是COPY过来的,没人遇到过这种情况吗?不是下载,是上传,而且上传文件小于10K,IIS6
浩飞__ 2005-03-31
  • 打赏
  • 举报
回复
解决办法:
1、先在服务里关闭 iis admin service 服务。
2、找到 windows\system32\inetsrv\ 下的 metabase.xml 文件。
3、用纯文本方式打开,找到 ASPMaxRequestEntityAllowed 把它修改为需要的值(可修改为10M即:10240000),默认为:204800,即:200K。
4、存盘,然后重启 iis admin service 服务。


在 IIS 6.0 中,无法下载超过4M的附件时,可以按以下步骤解决:
1、先在服务里关闭 iis admin service 服务。
2、找到 windows\system32\inetsrv\ 下的 metabase.xml 文件。
3、用纯文本方式打开,找到 AspBufferingLimit 把它修改为需要的值(可修改为20M即:20480000)。
4、存盘,然后重启 iis admin service 服务。
onetwofree 2005-03-31
  • 打赏
  • 举报
回复
如果怀疑是权限的问题的话,你在那个文件夹中授予"user"用户有权限修改\写 什么等操作试试看.
我以前的win2003也会出现这样的权限问题.

最好你能把错误信息帖出来.这样能准确知道是什么错误.
zzsdream 2005-03-31
  • 打赏
  • 举报
回复
你看看是不是数据库的写入权限,如果是的话把权限设置为veryone试一下,我想有50%是数据库写入权限的问题
CodeBunny 2005-03-31
  • 打赏
  • 举报
回复
谢谢楼上的帮忙,不过,这三种办法除了第二种我都试过了。

因为我只是上传了一个不到10K的文件,觉得应该不是文件大小的问题,所以就一直没改IIS文件设置,周末时去把这个也改一下试试吧,真郁闷……
Aspclass 2005-03-31
  • 打赏
  • 举报
回复
该是那边F的问题。。
1. 启用 父目录
2.改动iis下的文件设置(及MetaBase.xml)
3.把iis 下的站点设为可以浏览与写入的那种

试试看能否搞定
CodeBunny 2005-03-31
  • 打赏
  • 举报
回复
呵呵,你的问题解决了,可我的问题还在悬着呢 :(
破法者 2005-03-30
  • 打赏
  • 举报
回复
f u c k iis6 !吗的
CodeBunny 2005-03-30
  • 打赏
  • 举报
回复
呵呵,谢谢小明的建议,但服务器环境是客户指定的,我单方面说了是不算的,只能想办法把问题解决掉 :(
CodeBunny 2005-03-30
  • 打赏
  • 举报
回复
前两项我都改了,第三项没改。

但我上传一个9.5K的小LOGO都报错呀,应该不是文件大小的错误吧? :(
孟子E章 2005-03-30
  • 打赏
  • 举报
回复
Windows Server 2003 操作系统下注意事项


1,在WIN2003如何调用ASP页面

如果操作系统是Windows Server 2003,安装完Internet信息服务项目(IIS),在Internet服务管理器里,选择"web服务扩展",把"Active Server Pages"设为允许。

2,关于父目录

在“默认的站点”-“工作区[虚拟目录]”-“属性”-“虚拟目录”-“配置…”-“选项”-“启用父目录”选中。

3,在Windows Server 2003 下上传大文件注意事项:

在Windows Server 2003上传较大的附件进行发送时系统报错:

Request 对象 错误 'ASP 0104 : 80004005'
或者
007~ASP 0104~不允许操作~
或者
不能创建文件上载组件 Upload.UploadFile

出现上述信息,请进行如下操作:
先在服务里关闭iis admin service服务
找到 WINDOWS\system32\inetsrv\下的MetaBase.xml,
打开,找到ASPMaxRequestEntityAllowed 把他修改为需要的值,默认为204800,即200K,把它修改为51200000或者更大[根据文件大小确定]。
然后重启iis admin service服务。
CodeBunny 2005-03-30
  • 打赏
  • 举报
回复
IIS6应该还是比IIS5好的,只是一开始我们用得还不太习惯
lovebanyi 2005-03-29
  • 打赏
  • 举报
回复
好象是写入禁止之类的

请看清了错误..按你说的加完了,,之后是不会用事..不过你要再一个地方加上权限..就是上传图片所在的目录这样才行的.
CodeBunny 2005-03-29
  • 打赏
  • 举报
回复
为什么我在CSDN上问的问题几乎从来没人回答?郁闷~
CodeBunny 2005-03-29
  • 打赏
  • 举报
回复
一开始以为是IIS在该文件夹中没有写权限,但给EVERYONE都加上写权限了(包括IUser_等两个IIS专用账号)还是报同样的错误。
加载更多回复(5)

28,408

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧