I have started to get HTTP 500 errors when performing certain actions on one of my sites. The actions that cause this error include:

  • Trying to edit nodes with certain custom content types (but not all custom content types)
  • Trying to view the permissions admin page
  • Trying to save changes to custom Views
  • Trying to save changes to the list of enabled modules

When trying to save custom Views or update the enabled modules, reloading the page seems to work, but when editing custom nodes or viewing the permissions page, no amount of reloading helps. Weirdly, these errors are not showing up in my hosting provider's error log, so I have been unable to diagnose the problem.

I am running Drupal 6.22, and all my modules are up to date. I have a shared server with AN Hosting; their support folks asked how to reproduce the error, but since a) it only shows up when editing or performing admin tasks, and b) I cannot even access the permissions page to change the current permission settings, I don't think I can get them to reproduce the errors. Other Drupal sites I run under the same domain have not been getting these errors. I am at wit's end with this one site, and if I can't edit customized content, there's no point in using that site.

Any suggestions?

Comments

crimsondryad’s picture

We've had issues with this before. It could be a php timeout issue or a database timeout on large queries ( like your admin permissions page ). Most of the pages on your site are probably cached, so they don't hit the threshold as often. Do you find this occurs more after clearing the site cache?

For the permissions page, one thing you could do is install Drush and edit perms from there. You would need to be pretty comfy on the command line to use this though.

Some shared hosts will also let you edit some of the settings via .htaccess rules. You may be able to increase the php timeout. There's probably not much you will be able to do about a database timeout issue. You can talk to them, but that doesn't usually work.

You should also ask your host if they have APC turned on ( or look at your phpinfo() page...it will show if it's enabled ). If it isn't on, ask your host if they can turn it on and it may help.

If none of that helps, then you may need to look for a heftier hosting package. Most of the $4.99/mo type plans say they have unlimited everything until you read the fine print.

tortoise’s picture

This was pretty helpful. After getting rid of some superfluous modules, user roles, and custom fields, I seem to have streamlined things enough so that I can do all of the things that were previously giving me 500 errors, without incident.

Thanks a lot!