Your open source for Development and Design

Apache MaxClients

Filed under: Apache — Adi @ 12:46 am June 26, 2011

Working with Ubuntu or any other Linux distribution you really do learn something new every day. Yesterday one of my servers looked like Apache had Crashed.

Symptoms:

  • Loading a web page wont return a 404 or 500 error just a blank page
  • Restarting Apache will help for a minute or two
  • It’s a reoccurring issue
  • Happens when you have large spikes in traffic

Like most things in Linux it’s an easy fix as long as you know where to look.

To double check this is the issue load up the Apache Log, in Ubuntu it’s /var/log/apache2/error.log

You should see something like :

[Sat Jun 25 14:14:17 2011] [error] server reached MaxClients setting, consider raising the MaxClients setting

To resolve this issue go to /etc/apache2/apache2.conf and change the MaxClients settings from to a higher number. By default it’s 10 and I would recommend changing it to about 30+ if it’s shutting down at 10 requests. You will also need to restart Apache after you change the setting.

More information from Apache on MaxClients

Re: [#MQV-17419-739] nothing works

X
Inbox
X
WizzVPS Support
Thank you for your email with subject nothing works. Your request has been as…
Jun 18 (8 days ago)
Victor Inceu, WizzVPS Support
Hello, I have checked your system status and sshd daemon appears to be runnin…
Jun 18 (8 days ago)
Adrian Mursec
Hi What does the repair mode actually do, I’m trying to reset the server to t…
Jun 18 (8 days ago)
Victor Inceu, WizzVPS Support
Hi Adrian, With regards to the ‘Repair’ mode, please note that this won’t rei…
Jun 18 (8 days ago)
Adrian Mursec
Hi My websites don’t seem to load some times, Apache2 is still running and it…
2:12 PM (17 hours ago)
Reply
|
Ioan Nistor, WizzVPS Support to me
show details 2:21 PM (17 hours ago)
Hi Adrian,Something has to do with the sites, the maxclients value is reached pretty fast:

[Sat Jun 25 14:10:40 2011] [notice] Digest: generating secret for digest authentication …
[Sat Jun 25 14:10:40 2011] [notice] Digest: done
[Sat Jun 25 14:10:40 2011] [notice] Apache/2.2.14 (Ubuntu) DAV/2 SVN/1.6.6 mod_fcgid/2.3.4 PHP/5.3.2-1ubuntu4.9 with Suhosin-Patch mod_ruby/1.2.6 Ruby/1.8.7(2010-01-10) mod_ssl/2.2.14 OpenSSL/0.9.8k configured — resuming normal operations
[Sat Jun 25 14:10:45 2011] [error] server reached MaxClients setting, consider raising the MaxClients setting
[Sat Jun 25 14:13:13 2011] [notice] caught SIGTERM, shutting down
[Sat Jun 25 14:14:12 2011] [notice] suEXEC mechanism enabled (wrapper: /usr/lib/apache2/suexec)
[Sat Jun 25 14:14:12 2011] [notice] Digest: generating secret for digest authentication …
[Sat Jun 25 14:14:12 2011] [notice] Digest: done
[Sat Jun 25 14:14:12 2011] [notice] Apache/2.2.14 (Ubuntu) DAV/2 SVN/1.6.6 mod_fcgid/2.3.4 PHP/5.3.2-1ubuntu4.9 with Suhosin-Patch mod_ruby/1.2.6 Ruby/1.8.7(2010-01-10) mod_ssl/2.2.14 OpenSSL/0.9.8k configured — resuming normal operations
[Sat Jun 25 14:14:17 2011] [error] server reached MaxClients setting, consider raising the MaxClients setting

Please try to review first the sites you are hosting or increase the value for maxclients in apache config.

Regards,

Ioan Nistor

- Show quoted text -
Technical Support Engineer
WizzVPS.comAny prices stated exclude VAT at 20% (where applicable to EEC customers) unless explicitly stated otherwise. E&OE.

Access this ticket online: https://help.wizzvps.com
Follow us on Twitter: http://twitter.com/WizzVPS

WizzVPS is a trading name of Layershift Limited

Layershift Limited | Delta House | Wavell Road | Manchester | M22 5QZ | UK
Layershift Limited is a company registered in England and Wales (6036217). EU VAT number: GB 903 0349 62

=================================================================================
This email is confidential. If you are not the intended recipient of this email, please notify Layershift Limited immediately. Any form of  reproduction, dissemination, copying, disclosure, modification, distribution and/or publication of this e-mail message, either in whole or in part, is strictly prohibited without permission from Layershift Limited.

Reply
Forward
Adrian Mursec
Wow thanks for that, i’ve upped it to 50 for now and will do some research fo…
2:43 PM (16 hours ago)
Reply
|
Ioan Nistor, WizzVPS Support to me
show details 2:45 PM (16 hours ago)
Apache logs under debian/ubuntu are in /var/log/apache2/ directory.

- Show quoted text -
Regards,Ioan Nistor
Technical Support Engineer
WizzVPS.com

Any prices stated exclude VAT at 20% (where applicable to EEC customers) unless explicitly stated otherwise. E&OE.

Access this ticket online: https://help.wizzvps.com
Follow us on Twitter: http://twitter.com/WizzVPS

WizzVPS is a trading name of Layershift Limited

Layershift Limited | Delta House | Wavell Road | Manchester | M22 5QZ | UK
Layershift Limited is a company registered in England and Wales (6036217). EU VAT number: GB 903 0349 62

=================================================================================
This email is confidential. If you are not the intended recipient of this email, please notify Layershift Limited immediately. Any form of  reproduction, dissemination, copying, disclosure, modification, distribution and/or publication of this e-mail message, either in whole or in part, is strictly prohibited without permission from Layershift Limited.

Reply
Forward

PHP Spam Blocker

Filed under: API's,PHP — Tags: , — Adi @ 9:18 am October 23, 2010

If you have a problem with Bot user’s and spam in WordPress the best solution is setting up Akismet. It’s an easy to use plug-in that just needs an API key.

For Bespoke websites there isn’t a one click plug-in but there is a super easy to use Bot database called BotScout with an API that only requires a key and CURL.

Botscout is compatible a range of off the shelf PHP systems such as PHPBB.

The following function will return

  • 0 = Not a bot
  • 1 = Is a bot
  • 2 = Failed to check for some reason
function testSpam($XIP,$XUSER,$XMAIL){  /// IP,username,email
$botdata='';
$APIKEY = 'PxX19wq5uJWiIL8'; // your optional API key
$XMAIL =urlencode($XMAIL); // make the url compliant with urlencode()
$apiquery = "http://botscout.com/test/?multi&mail=$XMAIL&ip=$XIP&key=$APIKEY"; // testing for an email address and IP

if(function_exists('file_get_contents')){
$returned_data = file_get_contents($apiquery);    // Use file_get_contents
}else{
$ch = curl_init($apiquery);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$returned_data = curl_exec($ch);
curl_close($ch);
}

if($returned_data==''){// sanity check
return 2;
}

$botdata = explode('|', $returned_data); // take the returned value and parse it (standard API, not XML)

if(substr($returned_data, 0,1) == '!'){// if the first character is an exclamation mark, an error has occurred
return 2;
}

if($botdata[3] > 0 || $botdata[5] > 0){  /// it must be spam bot
return 1;
}else{
return 0;
}

}

Music to code

Filed under: Music — Adi @ 1:08 pm September 22, 2010

I have been a developer for nearly a decade now and had a lot of developer friends. One thing we all have in common is a very strict taste in whatever music we listen to. A lot will listen to indie or Norwegian Death Folk music. But 90% of the PHP developers I know are heavy metal heads.

It’s nothing new that people like to listen to good music while working no matter what you do for a living, drivers, coders, cyborg maintenance directors’. Maybe it just helps people relax and concentrate.

Either way I wante to share one of the bands I”ve found really good recently. A Manchester based band called Stolen Peace.

Older Posts »

Switch to our mobile site