I've been dealing with some problems in the last months, first problem was about the Mysql CPU usage, was realy high. After I have optimized alittle some tables I have resolved this issue. The server runs smoth with a single exception, when I get lots of RRRRRRRRRRRRRRR requests in apache status, basicaly the RRRR uses all the 200 apache conections.
Also I think my main website is not loading as fast as it should. (open homepage)
Now I was searching on optimizing the server and I see the KeepAlive is off.
My main website (2500 unique visitors/day) homepage has 123 elements in it (images, css and js files) and teoreticaly the keepalive set ON (timeout 2 seconds) it should help . I'm wright ?
WHM APACHE STATUS PAGE Current Time: Tuesday, 06-May-2008 12:03:54 EDT Restart Time: Tuesday, 06-May-2008 07:35:25 EDT Parent Server Generation: 7 Server uptime: 4 hours 28 minutes 29 seconds Total accesses: 304742 - Total Traffic: 1.9 GB CPU Usage: u3966.41 s338.39 cu.24 cs.26 - 26.7% CPU load 18.9 requests/sec - 124.1 kB/second - 6.6 kB/request 14 requests currently being processed, 45 idle servers
-----------------------------------------
WHM Service Status
Server Load1.68 (4 cpus) Memory Used47.1 % Swap Used3.82 %
I run a large service on 2 machines (we're talking 8x2.66Ghz processing power, 4-6GB ram, etc), however we are thinking about creating a node/clustered setup to help spread the load, bandwidth, mysql (having one server for hundreds of thousands of databases is not wise it seems :p), diskspace etc. Lots of machines just seems to be a cheaper and more powerful option.
Would you advise going with lots of lower end machines, or just a few mid-range machines.
Here is what I propose:
3 of these Dual Xeon 3GHZ Dual-Core (4x3GHz) 3GB RAM 500GB Sata Drive 4000 GB Bandwidth 100mbit
or
4 of these XEON X3220 QUAD CORE 2.4GHZ 1066FSB 2GB DDR2 RAM (Upgradeable) 250GB HDD 2000GB Bandwidth 100mbit
or
7 of these Dual Xeon 3.06 Ghz 2GB DDR2 RAM 250GB SATA 2000GB BW/MONTH 100mbit
All of the above are roughly similar prices in total.
I have installed APC on our Windows server. After I enable APC and restart apache our pages throwing Lots of PHP Notices.
Code :
System Windows NT 6.1 build 7601 (Windows Server 2008 R2 Web Server Edition Service Pack 1) i586Architecture x86Server API Apache 2.4 Handler Apache LoungeThread Safety enabledPHP Extension Build API20100525,TS,VC9Apache Version Apache/2.4.2 (Win32) OpenSSL/1.0.1c PHP/5.4.4Virtual Server Yes
I have a dedicated box with softlayer and I have noticed at varying times the past few months that with sites we host, sometimes the connection times out (I'll try to access like 5 or 6 sites within 30 seconds or so and they all drop, then a minute later they load fine).
I opened a support ticket and they said it usually has to do with the # of requests Apache can handle, and that this can be modified. They stated they could: "tweak the apache configuration file in this server that can make it possible to handle more requests."
So my question is what should the # of requests be set to? (I'm not sure what it is now, but I assume whatever the default # is).
I have Apache 2.4.2, OpenSSL/1.0.1c, on Windows Web Server 2008 R2 (64 bits)
After 12 hours of heavier load, the SSL requests stopped working/being answered. However if you requested the same page via http instead of https, it worked fine. Restarting the Apache server fixes this, for a while. Again after a few hours of traffic, the https requests stopped working again. I checked the logs, and nothing notable, the mod_ssl entries just...
The site is called only by client developed with Delphi 2007 (CodeGear user-agent). Delphi client use THTTPRIO for sending HTTPS request to SOAP.
So I just upgraded Apache 2.2.22 to Apache 2.4.3 and made sure to go through all the options that had changed and update the conf file accordingly. This included adding the cache module for SSL and changing the SSLMutex option over to Mutex default ssl-cache. We also turned off SSLCompression due to the CRIME attack vulnerability.
We use apache strictly as a loadbalancer to 2 tomcat servers via mod_jk. Apache serves no static content at this time.
After being deployed, everything worked fine until later in the day. After 3 hours of heavier load (our site only takes significant traffic during business hours), the SSL requests stopped working/being answered. However if you requested the same page via http instead of https, it worked fine.
Restarting the Apache server fixes this, for a while. Again after a few hours of traffic, the https requests stopped working again. This time I turned the loglevel up to debug and restarted the Apache server.
As traffic slowed down it took another 6 or 7 hours before SSL requests stopped working again. I checked the logs, and nothing notable, the mod_ssl entries just... stopped. (I don't know for sure its ammount of traffic related, it just seems that way)
I have tried reproducing this in a lab, but have not been able to get it to happen on the lab server.
OS: Windows Server 2008 R2 Apache: 2.4.3 vc9 build with OpenSSL 0.9.8 downloaded from apachelounge.org Mod_JK Version 1.2.37 vc9 also downloaded from apachelounge.
I've spent the last several months working on a huge upgrade of a couple dozen websites. The upgrades include modifying Apache so that visitors who arrive at links pointing to mysite/World/New_York are redirected to mysite/world/new-york. In other words, all my links now default to lower case, and underscores are replaced with dashes.
Unfortunately, publishing it has been an endless series of disasters. My websites are now all crashed, and the server is unbelievably slow. It takes pages forever to load (if they load at all), and I can scarcely publish files online.So the following notice sent to me by my webhost got my attention.
IT appears your own server IP is making GET requests to Apache, causing excessive loading and causing service failures. On today's date, your IP made almost 6,000 connections to Apache:<br><br>
I have a little problem (on my Raspberry) with the maximum concurrent connections.When I open multiple tabs of a webpage which keeps persistent connections, apache is unable to serve more requests.Here is the (shortened) mod_info output (which also takes some time till there is a process kind enough to serve the request):
Code: Server Version: Apache/2.4.10 (Raspbian) OpenSSL/1.0.1k Server MPM: prefork 5 requests currently being processed, 9 idle workers
I have an Apache Server (2.4.3) and a Tomcat Server (7.0.36) and have some Java Applications deployed.Everything works fine, but when we start a quite long Ajax process, I see in my Java Application, that a Ajax request is received and starts processing - everything fine. But during processing of the first request, I see a second request starts after 5 minutes.
I currently have a web VPS hosted with FDCServers.net and after 5 days of switching to it i am getting massive HTTP requests. When i login to WHM and hit apache status i have many requests per second by multiple IP's that are going to pages that simple don't exist. Currently my hostname for the server is set at web-01.optical-hosting.com which is what the requests are being sent to. I am also having a DNS issue because when i put http://web-01.optical-hosting.com in the web browser it displays the first account's site under "list accounts" in cpanel. Can someone please help me fix both of these issue's? i will post an apache log in a second post as it is long. Also, these are from overseas. please someone help me with this i have Aim and Msn.
I'm looking to pass the entries to a web form, via Apache, to an external process (listening on a port say 4321) running on the same host as Apache.Is there a way to "coerce" Apache into doing this?
My Linux Server's Http Daemon (Apache) would stop serving websites ever so often, as soon as apache is restarted the error fixes iteself only to resurface within few hours.
The apache process would still be running i.e. apache does not die but no websites hosted on my server would be accessible from browser. And when this happens the apache logs do not log any http requests.
Instead when this happens all http requests to my server would be redirected to some weird Trojan website and my Norton Antivirus would show an Alert/Warning, for example; "Browser exploit at www.xxx.xxx was blocked" Risk Name: MSIE WebViewFolderIcon ActiveX Control BO
or another error like; "Auto-Protect has detected Trojan.Fakeavalert".
At first i thought the problem could be with my Laptop/ISP so i logged on to the server via SSH and opened try to open a website using command line "lynx mywebsite.com" and it shows following error; "Alert!: HTTP/1.0 503 Service Unavailable".
Now if i assume my laptop were to be infected, then as soon as i restart my apache and visit mywebsite.com eveything returns to normal with no such warnings. Why do i see those norton error messages only when apache is down with 503, and when apache is down with 503 how come the http requests always get redirected to some suspicious websites and nothing gets logged in apache error log?
I think my server is being attacked causing http to get unresponsive and thereafter http requests to my server are redirected to some malicious website, is this correct?
Also, i suspect this is a php script exploit as some customers have reported that google have blocked their website due to security reasons, i found <iframe> tage inserted in some php pages which i fixed.
Also, another thinh i noticed; when apache responds with the 503 it is referencing PHP 5.1.4 in the header response:
[root@]# curl -I xxx.xxx.xxx.xxx (my server ip) HTTP/1.0 503 Service Unavailable Server: Apache X-Powered-By: PHP/5.1.4 Retry-After: 20
I am running PHP 4.3.9m why does apache responds with PHP 5.1.4 when this 503 error surfaces?
Also, since my apache was dowan with 503 error a customer mailed in today saying; "It seems that my site www.xxxx.com is regularly down, and the winlogon virus is involved."
I suspect this is again due to the fact that http requests start getting redirected?
So I've got a problem where a small percentage of incoming requests are resulting in "400 bad request" errors and I could really use some input. At first I thought they were just caused by malicious spiders, scrapers, etc. but they seem to be legitimate requests.
I'm running Apache 2.2.15 and mod_perl2.
The first thing I did was turn on mod_logio and interestingly enough, for every request where this happens the request headers are between 8000-9000 bytes, whereas with most requests it's under 1000. Hmm.
There are a lot of cookies being set, and it's happening across all browsers and operating systems, so I assumed it had to be related to bad or "corrupted" cookies somehow - but it's not.
I added "%{Cookie}i" to my LogFormat directive hoping that would provide some clues, but as it turns out half the time the 400 error is returned the client doesn't even have a cookie. Darn.
Next I fired up mod_log_forensic hoping to be able to see ALL the request headers, but as luck would have it nothing is logged when it happens. I guess Apache is returning the 400 error before the forensic module gets to do its logging?
By the way, when this happens I see this in the error log:
request failed: error reading the headers
To me this says Apache doesn't like something about the raw incoming request, rather than a problem with our rewriting, etc. Or am I misunderstanding the error?
I'm at a loss where to go from here. Is there some other way that I can easily see all the request headers? I feel like that's the only thing that will possibly provide a clue as to what's going on.
I have been trying to solve a big problem for the last 2 weeks with one of our servers.
The client using our system (web based w/ apache and php) is a contact center firm. They have about 120 operators, all connect to our websever with the same IP.
We have been suffering DoS attacks from some of these operators. This are simple, browser attacks , namely 5 or 10 operators will just hold F5 key and bombard the server with requests when they shouldnt.
We did manage to produce a php protection which will recognize the multiple requests and blacklist the user, but its "too late" because the request have already been sent and processed by the webserver.
We use the user ID in the system to control who should be blacklisted, so this is all dependent on our own authentication.
Ideally, we need something EXACTLY like mod_evasive, but for rejecting single requests instead of blocking the IP. Exemplifying : if a user calls the same url, 5 times, in a 3 second spawn, we will reject every next request for 30 seconds, but only the requests by that user.
If the webserver can make any use of it, the user id is stored in a cookie.
I'm running Apache 2.4.4 on Windows Server 2008 R2. It's already happened many times that Apache stopped responding to requests. The last entry in the error.log:
[Wed Mar 27 06:22:07.043600 2013] [mpm_winnt:notice] [pid 1736:tid 256] AH00354: Child: Starting 64 worker threads. [Wed Mar 27 06:52:34.521200 2013] [mpm_winnt:error] [pid 1736:tid 1656] AH00326: Server ran out of threads to serve requests. Consider raising the ThreadsPerChild setting
I'm trying to prevent unnecessary GET requests from being processed by my CMS that originate from mutating IP address locations. This is sucking up server resources when the request is processed by the app, and so if possible, I'd like to block them with HTACCESS so that the request is stopped before anything is intensively-processed.
What happens is that an IP address will make a GET request for, say, "blah/test" or "blah/test2" but nothing else (no site assets like images or CSS/JavaScript files or even other pages). After this request, another IP address will then make an equivalent kind of request, and so on, and so on... All of them have similar if not identical user agent strings but they're always worthless requests that do nothing but waste CPU and RAM. I'm assuming it's just some idiotic SPAM bot because of this.
So why does it still say Connection: Keep-Alive? I know that if its off, it should say Connection: Closed. And where did the timeout=1 and max=100 come from?
My httpd.conf Timeout 90 KeepAlive Off KeepAliveTimeout 15 KeepAliveRequests 10
HTTP headers is reporting Keep-Alive: timeout=1, max=100 Connection: Keep-Alive
My friend is setting up a media sharing site which will use a lot of bandwidth. He would like to colo two 2U servers with 10TB or so of bandwidth each. I have advised him that FDCservers unmetered is about the best price he can have. Can anyone else suggest a place offering 100mbit or 10TB of transfer for less than $1000/month per server.
We are running an application on IIS that sends out 4-500 emails per day via a smarthost, but nearly 11,000 every weekend. None of this is bulk mail...
We need a new smarthost provider ASAP, as our current host is discontinuing this service this week, and we were just notified.
I have a project (using multiple servers) that has generated 3TB of data (compressed), with another .5TB or so each month, and the hard drives on my servers are very close to capacity.
The data doesn't need to be accessible online, so I'm trying to find a low cost way to deal with this data. Keeping the data on dedicated server(s) raises the monthly cost every few months, which isn't good. Transferring that much data to my location via the Internet is costly and inconvenient.
I'm thinking the best option would be to find a host that can ship hard drives to me, after I copy data over. Does anyone know if that is something that hosting companies are willing to do?
I've a few arcades sites and they're using more bandwidth than my servers can handle (> 2TB month). I currently have two dedicated boxes.
The sites are static, so they don't require much processing power, just bandwidth (lots of .swf files).
My current host(liquidweb) offered me a 10mb unmetered for 100usd/month, which sounded too much, as I think that I'd be better renting more servers(Or VPSs) and spreading the sites (avoiding single point of failure).
I searched and thought about trying mediatemple grid service, which offers 1TB bw/month.
What do you guys think? Will I be able to use all the BW they promise, ow they will try to kick me off saying that I'm using too much resources(even I hosting only static files)?
1) What would you guys say is average in terms of the # of emails in the Mail Queue?
2) What steps can be taken to tighten it up? If I start with a clean slate, it only takes about a week or less for my mail queue to reach 1000 or more. Most of it seems like junk mail.