Currently I use WHM/cPanel latest on a few boxes, I have (at least to my knowledge) copied the exact compile settings between servers, yet some of my servers allow me to do concurrent file downloads (using DownThemAll or another "accelerator") whilst others only let me make 1 connection. These servers also don't show me the final filesize while downloading. So my question is, what did I set/unset to cause this to happen? It's been bugging me for a month or so now and no amount of recompiling has fixed the issue (aside from a clean install of the OS/cPanel). I can provide a list of modules and other config settings if required.
How is this done? from what I gether, there's nothing built into apache which can do this which I personally think is a bit silly as it seems like a common thing. Can anyone offer any help (for apache 2).
I have a powerful 8 core 8gb ram web server with scsi raid drives running RedHat EL 4. This server handles 2,000 - 3,000 HTTP requests per second via Litespeed httpd without strain (over 60%+ CPU idle time during peak load, under 1% IO wait). As the traffic volume continues to increase I've encountered a strange problem, the symptoms of which are as follows:
- About 1/4 or 1/3 of new connections are not answered by the server - they time out.
- All connections that are answered have exactly 3 seconds added to the time it takes to establish connection with the server (can be seen as "Connecting to ..." phase in FireFox). HTTP response times were tested by Pingdom from multiple locations all over the world.
- The problem is either "on" or "off", it is not gradual.
- Server ping is unaffected during the problem - no delay and no packet drops.
- The problem does not happen during off-peak hours of the day.
If litespeed httpd settings are tweaked to keep as many connections as possible in keepalive state for as long as possible, the problem is avoided, while tens of thousands of connections are kept in keepalive state.
Possible causes that were tested and eliminated: PHP/MySQL load (problem applies to static files exactly the same), CPU / IO / RAM, network uplink, hardware firewall, DNS.
This makes me think that there is some kind of bottleneck of how many NEW connections per second the server can accept. By maxing out keepalive quantity and duration I'm reducing the number of new connections per second. This is a temporary fix that will only work up to a certain point.
After investigation, litespeed staff verified that my litespeed configuration was correct and after some testing said that nothing in litespeed was responsible for this limiting factor. Litespeed process uses relatively little CPU and can definitely handle more volume.
Following sysctl.conf values were increased substantially to see if that will make a difference: tcp_max_syn_backlog, tcp_max_tw_buckets, tcp_max_orphans, netdev_max_backlog, somaxconn, file-max. This didn't produce any results. Disabling syncookies didn't help either. dmesg doesn't have any notices of limits being hit or throttles being applied.
Litespeed staff suggests that likely some limit in linux kernel is being reached. The strange 3 second delay does seem like an "intelligent" DDOS protection strategy of some sort. Perhaps this is some kind of kernel level DDOS protection?
When I SSH'd into my box, I received this message:
example.pl is on this server. HTTPD connections have been limited to restrict this script from overloading server. All servers that have hosted this file need to have extremely limited http connections or have this file removed. It is poorly written and intense on CPU/memory.
How do I go and allow example.pl to be run on my server again? I use it solely for personal sites, so I wish to not have this file blocked and be allowed to run. I've searched for almost an hour now so I figured I would go ahead and post to see if any more experienced members could assist.
I've been having trouble the past few days with someone who's been "attacking" my site so to speak by continuously downloading very large files with as many connections as (he) can open. I operate a large downloads site for computer games, this person has selected the largest files (like 400-500MB). Not sure of the real intent other than to clog up my bandwidth capacity. Also he appears to be using proxies since as soon as I ban one, another shows up seeminly from China.
Anyway, I have mod_bw and I've limited the number of connections in the downloads area to 2. While that works ok, his tool uses threads like a download manager would and he's using up 30-40 child threads for his 2 file downloads.
So 2 questions,
Is there anyway to not only limit file downloads to 2, but limit the number of connections per request? Many of my visitors do use download managers and I'd like for them to continue using them but use a reasonable number of threads like 6 or 8, but not 30.
Also, is there a way to restrict access to someone using a proxy?
Usually our website traffic is about 50 MB/day in our dedicated server. From these past 2 days it's consuming 5 GB/day and Apache2 opens so many processes/connections that our router can't handle and turns our WAN/LAN extremely SLOW!
If the reboot the server, it calms down but soon the apache2 starts again to open the connection (+1000).
Ive had this problem numerous times (website failed to connect error) before and the web management team tell me that apache2 needs to be restarted, seeing as they are not replying to my emails im gona try and do it myself.
i have already transfered a site from another server to my server !
this website using PHP5 and they asked me to enable register_global but i don`t know how to active register_global when PHP5 set as CGI value will not be accepted when PHP5 set as CGI : php_flag register_globals 1 * i think the last server used Suphp ( i found some files like : php.ini in FTP)
I have a problem. When MSN Search robot looks through my VPS, the machine is going "asleep", e.g. Apache2 (Port 80) doesn't answer at all. Here is the last falling:
Code: 23:14:15 up 4 days, 9:06, 5 users, load average: 37.18, 31.25, 27.46 I hardly ever can enter 'pkill apache2' to kill Apache2 processes. Here is my Apache2 configuration (timeouts, prefork, e.g.):
Code: Timeout 30 KeepAlive On MaxKeepAliveRequests 20 KeepAliveTimeout 5
I just wondered if anyone can help me out with an Apache problem. I currently run Debian 3.1 (on 10 GB space and 256 MB of RAM) with Apache 2.0.59 installed through apt-get.
Apache runs with 10 child processes running simultaneously to handle multiple requests at once. I have set up Apache to use virtual hosts for every single account since they are hosted on their own domains/subdomains.
I put in a crontab to restart Apache every 15 minutes. The reason being is because after a while, Apache will start lagging to display web pages. When it's restarted, it works just fine and fast. After roughly 10 minutes now, it will take roughly a minute for the request to finally send the data back to the browser. It's not the web page that causes it, it's Apache or some factor effecting it's performance.
Does anyone know what the cause may be or how to fix it? Personally, I think it might be a memory issue.
But when i tried to start apache i got an error message saying that libphp5.so is corrupted or something.. (garbled - perhaps this is not an Apache module DSO?)
Now i just want to retore php4 working as it was !
i did apt-get remove php5 libapache2-mod-php5 php5-gd php5-mysql and apt-get install php4 libapache2-mod-php4 php4-gd php4-mysql
but i can't find the php4.conf and php4.load on the /modules-enabled or /modules-available
tried to write those files manualy as php4.so exists with other libs.
apache does not load php
host:/etc/init.d# apt-get install php4 php4-mysql php4-cli libapache2-mod-php4 Lecture des listes de paquets... Fait Construction de l'arbre des dépendances... Fait Paquets suggérés : php-pear php4-pear Les NOUVEAUX paquets suivants seront installés : libapache2-mod-php4 php4 php4-cli php4-mysql 0 mis à jour, 4 nouvellement installés, 0 à enlever et 275 non mis à jour. Il est nécessaire de prendre 0o/3258ko dans les archives. Après dépaquetage, 6517ko d'espace disque supplémentaires seront utilisés. Sélection du paquet libapache2-mod-php4 précédemment désélectionné. (Lecture de la base de données... 35624 fichiers et répertoires déjà installés.) Dépaquetage de libapache2-mod-php4 (à partir de .../libapache2-mod-php4_6%3a4.4.7-0.dotdeb.0_i386.deb) ... Sélection du paquet php4 précédemment désélectionné. Dépaquetage de php4 (à partir de .../php4_6%3a4.4.7-0.dotdeb.0_all.deb) ... Sélection du paquet php4-cli précédemment désélectionné. Dépaquetage de php4-cli (à partir de .../php4-cli_6%3a4.4.7-0.dotdeb.0_i386.deb) ... Sélection du paquet php4-mysql précédemment désélectionné. Dépaquetage de php4-mysql (à partir de .../php4-mysql_6%3a4.4.7-0.dotdeb.0_i386.deb) ... Paramétrage de libapache2-mod-php4 (4.4.7-0.dotdeb.0) ...
Paramétrage de php4 (4.4.7-0.dotdeb.0) ...
Paramétrage de php4-cli (4.4.7-0.dotdeb.0) ...
Paramétrage de php4-mysql (4.4.7-0.dotdeb.0) ...
host:/etc/init.d# /etc/init.d/apache2 force-reload Forcing reload of web server (apache2)...apache2: Syntax error on line 116 of /etc/apache2/apache2.conf: Syntax error on line 1 of /etc/apache2/mods-enabled/php4.load: API module structure `php4_module' in file /usr/lib/apache2/modules/libphp4.so is garbled - perhaps this is not an Apache module DSO?
I'm running Apache 2.0.54 on my server and just recently Apache has been giving me problems that I haven't been able to fix permanently. In my error log, Apache marks down "[error] (88)Socket operation on non-socket: apr_accept: (client socket)" roughly 3 to 4 times a second and then turns off. In SSH, I send a restart command and it tells me it's still running but then it says when I restart it again that it wasn't running.
My main concern is fixing Apache from showing this error and from crashing so much. I did some research and through inconclusive evidence, it seems like a crontab error (ironically Apache doesn't use any cron jobs I can see).
Looking for quick, easy global load balancing solution. This is actually for a temporary situation (we need to move to a new DC and need to make this seamless as possible). Linux solution preferred if possible. What can we use to get this achieved?
How exactly does it work? does it need VPN between locations or is client redirected to a different IP somehow?
We would consider dedicated hardware solutions provided that we can get 2 pieces for under $2,000 total (ebay i guess).