Apache CGI script timing out

I'm an experienced software developer but this issue has me totally stumped.  I have two Linux servers, one sitting in Virginia, one in Bangalore, India.  Both are running "Red Hat Enterprise Linux ES release 4 (Nahant Update 4)" and apache 2.0.52.  The problem is, on the machine in Bangalore a perl CGI script always times out after 300 seconds.  Both systems have identical httpd.conf files (except ServerName) , both have the same tcp/ip settings (when I run /sbin/sysctl -a | grep net.inet.tcp I get the same results).  I tried running httpd on the Bangalore system with -f /etc/httpd/conf/httpd.conf to make sure it was picking up the "Timeout 5400" line in httpd.conf.  I even put in both Timeout and TimeOut in the file just in case case matters.

The only difference between the two systems that I can tell is that one system is running a 32 bit compiled httpd and one a 64 bit binary.  I've attached a simple CGI script.  On the Virginia system, about 5 minute go by and then it reports "Slept 301 seconds".  When I run the same CGI script on the Bangalore system, my browser waits forever.  If I change it to sleep 299 seconds, it works.  So somewhere something is timing out at 300 seconds, the question is what?  My browser just sits there forever waiting for a response, and there is nothing unusual logged in the error_log or access_log to help me debug where the response is being dropped.

#!/usr/bin/perl
 
my $sleep_sec = 5 * 60 + 1;
sleep ($sleep_sec);
 
print "Content-type: text/plain\n\n";
print "Slept $sleep_sec seconds\n";
exit 0;

Open in new window

Clouseau2Asked:
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

TintinCommented:
Are you going through a proxy server to get to either server?

Have you tried seeing what results you get with a different browser?

Have you tried running tcpdump on the server in India to see if it is network related?

Does it make any difference if you add a

$|=1;

to the script?
0
Clouseau2Author Commented:

There is no proxy server, this is through a corporate WAN, I'm on a VPN -- but the problem is also happing from people on the WAN.

I haven't tried a different browser but others are having the same problem and they use IE.

I've attached output from the tcpdump

Adding $| = 1 makes no difference.  The CGI script I wrote it just a simple test script that demonstrates the problem - ALL CGI scripts are having this problem on the system.

tcp.txt
0
Hugh FraserConsultantCommented:
I'd suggest doube-checking the proxy server, even on a WAN. It's not unreasonable to deploy one in a global wan to reduce traffic/latency on trans-ocean hops.

Secondly see if the Bangalore site (or anywhere in between) is running an IPS that's checking for http tunnels. A 5 minute response time is quite long for normal http traffic, and might be triggering an IPS signature that breaks the connection.
0
Clouseau2Author Commented:

Well I had them try out the delay.cgi script on the local LAN and it did NOT timeout -- so the problem must be in the network between Bangalore (actually Chennai got them mixed up lol) -- I'll give hfraser to solution since that did give me the idea to check that!

I still don't know what the real problem is, but now it's out of my hands and in the hands of the networking people ... the apache server is working perfectly.
0

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Scripting Languages

From novice to tech pro — start learning today.

Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.