1

我正在开发一个数据服务器的 Web 界面,允许我办公室的用户上传文件进行存储。现在,我正在使用Python 2.7在我的32 位 Windows XP桌面上运行CGIHTTPServer ,并对各种文件(通常是图像和视频文件)执行一些测试。

对于大多数文件,一切似乎都运行良好。但是,当我上传大约4MB或更大的文件时,请求失败,服务器抛出IOError: [Errno 22] Invalid argument错误。

这是完整的回溯,以防万一,但我怀疑不是:

Traceback (most recent call last):
File "C:\Python27\lib\SocketServer.py", line 284, in _handle_request_noblock
self.process_request(request, client_address)
File "C:\Python27\lib\SocketServer.py", line 310, in process_request
  self.finish_request(request, client_address)    
File "C:\Python27\lib\SocketServer.py", line 323, in finish_request
  self.RequestHandlerClass(request, client_address, self)
File "C:\Python27\lib\SocketServer.py", line 639, in __init__
  self.handle()
File "C:\Python27\lib\BaseHTTPServer.py", line 337, in handle
  self.handle_one_request()
File "C:\Python27\lib\BaseHTTPServer.py", line 325, in handle_one_request
  method()
File "C:\Python27\lib\CGIHTTPServer.py", line 61, in do_POST
  self.run_cgi()
File "C:\Python27\lib\CGIHTTPServer.py", line 287, in run_cgi
  stdout, stderr = p.communicate(data)
File "C:\Python27\lib\subprocess.py", line 740, in communicate
  return self._communicate(input)
File "C:\Python27\lib\subprocess.py", line 960, in _communicate
  self.stdin.write(input)
IOError: [Errno 22] Invalid argument

起初我怀疑是代码错误,但在调用我的任何代码之前服务器崩溃了,所以我对在哪里寻找解决方案感到困惑。

服务器的这种基本实现是否有可能无法处理更大的文件?我在网上查了一下,没有发现有这种情况的迹象。如果是这种情况,我也会期待不同的错误消息。

4

0 回答 0