I was having a problem yesterday with a "Fatal error: Allowed memory size of..." message which made my site unusable.
After trying in vain to find an answer to fix this, I eventually contacted my hosting support and whatever they did brought my site back up.
This morning, I'm getting this:
"The requested URL /Network/elgg-1.7.1/engine/handlers/pagehandler.php was not found on this server."
Having taken a look at this file, it states "pagehandler.php_Disabled_By_Arvixe" (my hosting)
They fixed one problem and created another, and it's no better because my users can't actually do anything!
Someone please help?
And a tip for you - Don't use Arvixe!!!
It seems they didn't actually assist, they cose to restrict my site...
user **** has a page, pagehander.php, that is using too much CPU consistantly. Pid Owner Priority Cpu % Mem % Command 18687 **** 4 46.5 4.2 /usr/bin/php /home/****/public_html/Network/elgg-1.7.1/engine/handlers/pagehandler.php 18696 **** 4 40.5 3.6 /usr/bin/php /home/****/public_html/Network/elgg-1.7.1/engine/handlers/pagehandler.php 18698 **** 4 40.0 3.6 /usr/bin/php /home/****/public_html/Network/elgg-1.7.1/engine/handlers/pagehandler.php Action taken - I have renamed the file to pagehandler.php_Disabled_By_Arvixe Conditions for turn on - The customer will have to consult the developer to resolve this issue.
So what do I do now?
My site is not usable, Arvixe are not helping me AT ALL. Info on any of the problems I am experiencing cannot be found anywhere.
I just want to get my site back up and running, and Arvixe don't seem at all interested in telling me what I need to do.
I'm at my limit here, any help will be desperately appreciated!
I guess you are on a shared server at Arvixe. I can't tell you exactly why you had the original memory problem (maybe due to php.ini restrictions?). But the problem with pagehandler.php was most likely caused by creating too much CPU load, as the pagehandler.php handles quite a lot of page request on Elgg sites. Shared server terms of service often include some rules about maximum CPU resources you are allowed to use.
I'd been on a shared server at HostUpon and they have the rule to "not use more than 10% CPU resources for more than 60 seconds". One day I found my site down and when I opened a support ticket got the answer that my site broke this rule. Fortunately, they didn't sabotage my site by changing filenames or blocking scripts, but just moved my site to their cloud server. Still a shared server... sometimes performance was great but most of the time it was unbearable slow.
Therefore I moved my site on a VPS. It's still on HostUpon. Support is really good most of the time and after some initial config issues (my.cnf, ffmpeg) and an upgrade to 1 GB RAM it seems to run fine at last.
So, you might consider moving to VPS as you have less restriction on resources and are also not slowed down by other sites.
This is what annoys me about Arvixe. They have already upgraded my hosting once from personal to business for the very same reason, and they did offer VPS, but the site was back up within minutes of talking to them. So it seemed the business class hosting was fine.
This is the second time in a month THEY have made my site unusable without warning.
Not very reliable huh?
Luke, I think the same could happen with other hosters, too. If a site takes too much resources on a shared server, the server admins seem always to react without much mercy. When they moved my site from the shared server I had been at the beginning to their cloud server they didn't tell me in advance either - and I still don't know what had been the exact problem back then.
I think the general problem with Elgg hosting is that shared server might generally not be suitable for Elgg - even if the hosting companies promote Elgg hosting also for their shared server hosting plans... Additionally, the people working in support don't know much about Elgg either - at least in my experience. They might tell you that your "script" uses rather much CPU resources or puts quite a heavy load on the mysql server, so you might want to optimize your "script". Maybe they thought that by renaming pagehandler.php on your site they wouldn't do much damage, only disabling a minor feature that's causing all the trouble... Some guys working in support will also be more helpful than others. So far, I have been in contact with three guys working in support at my hoster. Two of them had always been very helpful and always managed to solve my problems while the third guy is rather annoying. Either he denied that there is a problem at all or he tried to convince me to switch to a more expensive hosting plan not taking into account my needs at all.
You will have to decide on your own if you want to move away from Arvixe or maybe just switch to VPS at Arvixe. I believe you would have the same performance problems on a shared server at any other hoster sooner or later, too.
I have now upgraded to VPS, but the support is still terrible. For instance when they did this they didn't do anything about the pagehandler.php that they'd disabled. I replaced it.
And now, twelve hours after upgrading, the site is painfully slow. I mean it's taking five minutes to load a basic page.
I really don't know what to do from here. It seems wherever I go to seek advice/assistance/info no one seems able or willing to offer solutions, apart from the occasional person o here of course (thank you).
It just seems to me that no one is actually ready for open source social networks. The hosting is misleading (or blatantly dishonest), the support for the system itself is confusing and contradictory, and resources are haphazard and scattered with no real structure to some basic questions.
I'll se how things go in finding relevant info for me over the next few days, but to be honest I'm very disillusioned with the entire endeavour.
And thanks again for your assistance.
There is no way that a basic page should take 5 minutes. If you use the Elgg developer tools, you can check how long each page takes to create. That lets you know whether the issue might be bandwidth related (either on your side or theirs). You'll need to know how to check your error log to use it.
If you're hitting profile pages with plenty of widgets, you'll want to use my eager_widgets plugin. That drastically decreases load for those pages.
A lot of the time, when pages are not loading after a few minutes, I'm getting a 500 Internal Server Error, and I'm getting that Allowed Memory Fatal error too, relating to database.php
The only info I can find on that is changing the allowed memory in php.ini. I located that, but I can't find the setting to alter.
Luke, how much RAM do you have on your VPS? 512 MB or more? I had only 512 MB at the beginning when I switched to VPS and that is not enough. Pages built up slow and were incomplete. The 500 Internal server errors give some indication that you might have the same problem. I have now 1 GB and that improved everything a lot.
Maybe your Apache server is using suphp. Actually that's good as you don't have trouble with permission/ownership of files. But you can't set php parameters in .htaccess anymore. Instead you have to set them in php.ini. If you have WHM/CPanel access you can access the php.ini settings (I think in Service settings). Set memory limit to 64 MB. You can also set upload file size, post size, max execution time, max input time.
Most likely your mysql server settings are also not set well yet. My hoster left me with an empty my.cnf file, i.e. all variables on default. In the meantime I changed a few settings by trial and error. If you are interested I can post my current my.cnf. But 1GB RAM is important. I think that will improve your site most.
Another thought. Ask your support how much RAM your VPS node has. Immediatelly after my site was moved the server had only 4 GB - for all VPS on this server. They increased the RAM of the VPS node to 16 GB and that already made my site faster (most likely less swapping). They also increased the CPU cores of my VPS to 4. But CPU resources seem less of a problem.
But the RAM of your VPS itself should be at least 1 GB. That's the memory available for Elgg.