This is a mystery. I have upgraded my site from D6.16 and upgraded a few modules as well. I did a few other things like run cron and edited my theme, but now, once I log out, I cannot log in.

Luckily I am still logged in on my alternative computer so can access admin, but on on all browsers that are not logged in, login does not appear to work at all.

I have now turned off almost all the modules, switched to Garland, everything I can think off, but nothing.

If I attempt to login via login box, I'm redirected to the same page, but not logged in, if I log in via /user , I am redirected to the user's profile, but still not logged in.

Drupal 6.17
MySQL 5.0.91
PHP 5.2.8

Any ideas will be appreciated.

Comments

nevets’s picture

Have you run update.php?

Manamarak’s picture

Yes, thank you, I have done that. It does not solve the problem.

Manamarak’s picture

er... bump.

Patroclas’s picture

Just a few thoughts...

Clear browser caches, especially cookies.

Check that the site is online (ie not in maintenance mode)

Look at the database and check that user 0 is present in the user table. Also check that other user accounts are actually there.

If you are logged in on one machine, I assume that another will not allow a second login to the same account (but I'm not completely sure how Drupal handles this).

nevets’s picture

Admin user is user 1 (not 0).

Drupal by default does not prevent multiple logins using same account.

Manamarak’s picture

Indeed, Nevets, you are correct, user 1 is admin, but it still does not bring me any closer to the answer.

I have also done all of the above, but I am still unable to log in, this is immensely frustrating.

If anyone has any ideas where I am going wrong, that would really, really be appreciated.

janed’s picture

Hey,

This is probably a nutty idea, and unlikely to be the problem, but since everything else you've tried has failed, then you never know, it might be worth a shot ...

So, I was thinking that, maybe after the upgrade, your USERS table in Drupal could have become corrupted for some reason ... Since it won't cause any harm if it's not the problem, then you could try running the MySQL REPAIR command on the table, as follows:

MySQL PROMPT> REPAIR TABLE USERS;

... just a thought!

Manamarak’s picture

Right, this was very frustrating, but after several wasted hours I have solved it.

The problem was essentially that in Drupal 6.17 there was a change in the settings.php file.

All I had to do was to edit the cookie domain and remove the www. from the www.example.com

I know that this was noted in the install.txt, but I do think it should have been flagged up cleared, as a change to settings.php could potentially affect a lot of websites. I will be adding some documentation to drupal regarding this later.

turadg’s picture

Manamarak, I was having this exact same problem. Thank you for solving it.

It is mentioned in the upgrade docs though I agree it could be more prominent.

http://drupal.org/drupal-6.17

Incidentally, I solved mine by prefixing a '.' instead of removing a 'www.'.

janeri’s picture

Thanks for sharing this,

solved my case too

Manamarak’s picture

Hahahahaha!

I just struggled for half an hour to solve this on my localhost, googled the question, came up against this answer, which I previously provided, which solved my problem.

I think I am going insane.

Manamarak’s picture

There may be a circular loop, though luckily, it wasn't infinite.

MarcH’s picture

Thanks for publishing. I had the same problem, now it works.

ronliskey’s picture

Saved me too. So simple and obvious once we stop to think (or find notes from someone who did). :-)
Thanks for posting the solution!

stephenrobinson’s picture

Perhaps your browser isnt accepting cookies, or the server has run out of space to store sessions, you could also use phpmyadmin to truncate your cache tables and then run update.php

geoffmen’s picture

OMG I had been at it for hours!
Correcting the $cookie_domain did it for me.