Drupal 'Access Denied' on all pages

Ran into an interesting little snag this morning - a client's Drupal site was spitting out "Access Denied" errors for all page loads by anonymous users. It didn't appear to be a permissions problem - the nodes just wouldn't let anyone look at them.

A bit of Googling found a bunch of posts like this that say that, for some mysterious reason, Drupal can lose the contents of the node_access table and you need to repopulate them.

INSERT  INTO  node_access
  (nid ,gid ,realm ,grant_view, grant_update , grant_delete)
  VALUES ( '0',  '0',  'all',  '1',  '0',  '0')

Unfortunately, I didn't exactly have access to the client's database. A bit of poking around in the source showed me that visiting /admin/content/node-settings/rebuild would fire off an internal process to do the same thing.

Crisis averted, fix discovered. I just hope I don't need to use it again in the future.

Filed under drupal.

Comments

Thanks for this! After unsuccessfully trying multiple other fixes, this was the one that saved our site!

Much appreciated.

Awesome! Thank you. Yet another entry into my massive little Drupal quirks file. I really start to wonder at times how much time I'm saving with Drupal when you take into account the hours scouring the interweb to try and find solutions to its... features. Yawn.

Thank you Dude...! I am just angry I didn't find you 6hours earlier....I lost that hours, but finally I google you and fixed it in 2minutes.... You are a MAN ! Zeno

Thanks. We've been wrestling with intermittent permissions issues for a few weeks now (and rebuilding permissions would lead to all anonymous users being denied access to all pages). This fixed it. I hope it sticks. :)

hey you just saved me from a loss. Today morning i ran into similar problem. Thank god your solution was there to save me. You are just an angel to me.

I implemented your solution by visiting /admin/content/node-settings/rebuild as you suggested. The result, which took about five seconds, repopulated the contents of the node_access table.

Thank you for solution. Helped ALOT. Now I can soon go to sleep :]

Thank you so much, this solved my problem.
If you had a paypal donation button, I would have paid you a beer.
Thanks mate

Add new comment