2

On two of our servers we have an Ubuntu LAMP setup with PHP code designed to allow large image and audio uploads. One of our clients is having an issue where they are unable to upload any files larger than ~4MB from any computer in their office. They get a "The connection was reset" this error in FireFox and in chrome they get "Error 101 (net::ERR_CONNECTION_RESET): Unknown error." In chrome I can watch the upload percentage and see the upload fail around the time ~4MB is reached (53%) on an 7.79MB file.

It's not a speed issue as I've successfully uploaded files from slower networks.

Apache is returning no errors in the logs, and is recording the start of the post in the access log.

The PHP.ini is set to allow files up to 500MB and we have other clients doing this with no problems. I've upped the script timeouts of PHP as well.

I've tested uploading from a number of other locations to the servers with no errors; and I've also tested uploading from the clients location to other services, also with no errors.

I'm really at a loss i can't tell if it's a server error a client and I'm hoping someone might know of something I can use to test or perhapses possibly a setting I might have missed.

2
  • I would start testing with some network tool like tracert, tcpdump and so on. I would also see if I could sftp a file to the server if that is an option from the client side. Is the client a PC or a Mac?
    – egorgry
    Mar 23, 2011 at 12:32
  • The client is a PC, I'll run a few tests using these options. Mar 23, 2011 at 13:07

3 Answers 3

0

Is there a Firewall/IPS in between? We had this exact issue when a certain part of a file popped a false positive on our IPS, causing all sorts of drops and hangs with website access.

2
  • No IPS on our end and I was able to upload the same file from their office to another service, on different servers. I also wasn't able to upload the file to our development server which is using the same ISP as our production server although a different location entirely. Dev has the same server setup but a different firewall then our production system. Mar 23, 2011 at 13:10
  • 1
    Turns out they had a filter that was being triggered by a rule associated with our domain. Mar 24, 2011 at 6:45
1

and is recording the start of the post in the access log

No - apache only ever logs completion of a request in the access_log (unless you have some thing like mod_security which can be explicitly configured to post a log on submission). Which rather implies some of your other assertions may be wrong too.

The PHP.ini is set to allow files up to 500MB and we have other clients doing this with no problems. I've upped the script timeouts of PHP as well.

What is the apache config? (particularly LimitRequestBody, LimitRequestFieldsize, TimeOut) What version of apache?

One of our clients is having an issue ... from any computer in their office ... successfully uploaded files from slower networks. ... 500MB and we have other clients doing this with no problems

That implies something specific to the connection between that office and your servers - e.g. a firewall. You can demonstrate by capturing a session using wireshark or similar (client is receiving a RST ostensibly from your server - you would be able to that packet at your end if it was your servers terminating the connection - if its something else terminating, then you won't see a RST packet leaving your server). Alternatively just direct them to the nerarest internet cafe and ask them to try from there to confirm its their problem.

1
  • Thanks this helped a lot in determining the final solution. Mar 24, 2011 at 6:46
0

Have you checked the place where the uploads in progress are stored? /tmp or otherwise?

Do you have more than 4 MB space left? dmesg or system error log giving any clues?

1
  • The disk still has well over 400GB available and there's nothing in either dmesg or syslog. Mar 24, 2011 at 1:31

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .