Trusted WordPress tutorials, when you need them most.
Beginner’s Guide to WordPress
WPB Cup
25 Million+
Websites using our plugins
16+
Years of WordPress experience
3000+
WordPress tutorials
by experts

How to Fix WordPress Login Page Refreshing and Redirecting Issue

Editorial Note: We earn a commission from partner links on WPBeginner. Commissions do not affect our editors' opinions or evaluations. Learn more about Editorial Process.

Does your WordPress login page keep refreshing and redirecting when you try to log in to your website?

This issue locks you out of the WordPress admin area, making you unable to work on your website.

In this article, we will show you how to fix the WordPress login page refreshing and redirecting issue.

Fixing the login page redirect and refresh issue in WordPress

What Causes the Login Page Refresh and Redirect Issue in WordPress?

The WordPress login page refresh and redirect error is usually caused by incorrect WordPress URL settings or failure to set login cookies.

Normally, when you log in, WordPress validates your username and password and then sets a login cookie in your browser. After that, it redirects you to the WordPress dashboard.

If WordPress fails to set the login cookie correctly or your WordPress admin area URL is incorrect, then you will be redirected back to the login screen instead of the admin dashboard.

Login page redirect issue in WordPress

Login issues can also be caused by different WordPress errors, such as the error establishing database connection, internal server error, or the white screen of death.

With that in mind, let’s troubleshoot and fix the WordPress login page redirect and refresh issue. You can use these quick links to jump to a specific method:

Note: If you want to try the advanced steps in this WordPress tutorial, then please create a backup of your site first. See our guide on how to manually create a WordPress database backup.

Video Tutorial

Subscribe to WPBeginner

If you don’t like the video or prefer the written version instead, then please continue reading.

Method 1: Clear Cookies to Resolve Login Issues

WordPress uses cookies for login authentication, so the first step in troubleshooting WordPress login issues is the simplest one. You will need to clear your browser cookies and cache.

In Google Chrome, simply click on the browser settings menu and then select More Tools » Clear Browsing Data.

Clear browsing data in Google Chrome

This will launch the Chrome Settings page with a ‘Clear Browsing Data’ popup displayed on the screen.

From here, you need to select the ‘Clear cookies and other site data’ and ‘Cached images and files’ options.

Clear cookies and cache in Google chrome

Next, click on the ‘Clear data’ button, and Google Chrome will clear the browser cache.

Also, make sure that your browser has cookies enabled. After doing that, restart your browser and then try to log in. This should fix the issue for most folks.

We have a complete guide with screenshots showing how to clear the cache and cookies in all major browsers.

Method 2: Update WordPress URL Settings

WordPress comes with settings for the URL of your website and the URL of your WordPress installation.

If you had access to your WordPress admin area, then you could see this option on the Settings » General page.

WordPress URL settings

If these URLs are incorrect, then WordPress will redirect you back to the login page.

Since you are unable to access the WordPress admin area, you will need to edit the wp-config.php file to fix this issue.

The wp-config.php file is a special file in WordPress that contains your important WordPress settings. You can access it using an FTP client or via the File Manager app in your WordPress hosting account dashboard.

Editing wp-config.php file via FTP

You will find the wp-config.php file in your site’s root folder. Simply edit the file and paste the following lines of code just before the one that says, 'That's all, stop editing! Happy publishing'.

define('WP_HOME','https://www.example.com');
define('WP_SITEURL','https://www.example.com');

Don’t forget to replace ‘example.com’ with your own domain name.

After that, save your changes and upload the file back to your website.

You can now visit your WordPress website and try to log in. Hopefully, this will have fixed the issue for you. If it didn’t, then continue reading for additional troubleshooting steps.

Method 3: Delete .htaccess File in WordPress

Sometimes, the .htaccess file can get corrupted, which can result in internal server errors or the login page refreshing error.

Simply access your website using an FTP client or via the File Manager app in your hosting provider’s dashboard.

Once connected, locate the .htaccess file in the root directory of your website and download it to your computer as a backup.

If you can’t find your .htaccess file, this guide on why your .htaccess file may be missing can help you.

Delete .htaccess file in WordPress

After that, go ahead and delete the .htaccess file from your website.

Next, open the wp-admin directory, and if there is a .htaccess file there, then go ahead and delete it as well.

You can now try to log in to your WordPress website. If you succeed, then this means that your .htaccess file was stopping you from logging in to WordPress.

Once you are logged in, simply go to the Settings » Permalinks page in the WordPress admin panel and click on the ‘Save’ button without making any changes. This will generate a new .htaccess file for your website.

Method 4: Deactivate All WordPress Plugins

Sometimes, WordPress plugins can cause this issue, especially if there is a conflict between two plugins.

To easily deactivate all your WordPress plugins, connect to your website using an FTP client or via the File Manager app in your web hosting account dashboard.

Once connected, go to the /wp-content/ directory. Inside it, you will see a folder named ‘plugins’. This is where WordPress installs all your plugins.

Rename plugins folder to deactivate all plugins

Simply rename the plugins folder to ‘plugins_backup’. This will deactivate all WordPress plugins installed on your website.

We also have a detailed tutorial on how to deactivate all WordPress plugins when the WordPress admin is inaccessible.

Once you have deactivated all plugins, try logging in to your WordPress site. If you succeed, then this means that one of your plugins was causing the issue.

Method 5: Revert to the Default Theme

WordPress themes can also cause conflicts after upgrading to a newer version of WordPress or the theme itself. To find out whether the problem is being caused by your theme, you will need to deactivate it.

The process is similar to deactivating plugins. Connect to your website using an FTP client. Then, you must go to /wp-content/themes/ directory and rename your current theme directory to ‘themes_backup’.

Once you have done that, then try logging in again. If you succeed, then this means your theme was causing the issue.

You can now reinstall a fresh copy of your theme to see if this resolves the issue. If the problem reappears, then you will need to contact your theme’s support or switch to a different WordPress theme.

Method 6: Reinstall WordPress Core

In rare cases, the persistent login page refresh issue might be caused by corrupted WordPress core files.

These core files are the foundation of your WordPress website and manage essential functionalities. If these files become damaged or overwritten with incorrect code, it can lead to various errors, including login problems.

First, head over to WordPress.org and download the latest version of the software. Once downloaded, unzip the file on your computer. This will create a folder named ‘wordpress’ containing all the necessary files for the reinstall.

WordPress files

Next, you’ll need to connect to your website using an FTP client or the file manager provided by your hosting company.

Once connected, navigate to the root folder of your website. This is the main directory that contains folders like wp-admin, wp-content, and wp-includes.

Upload core WordPress files

At this stage, grab all the files from the ‘wordpress’ folder on your computer and upload them to your website’s root directory.

Your FTP client will ask you to confirm overwriting any existing core files.

Since you’re deleting corrupted WordPress core files and replacing them with new ones, choose ‘Overwrite’ and select the option to ‘Always use this action’ to avoid needing to confirm each file individually.

Overwrite core files

Finally, click ‘OK’ to begin the upload process. Your FTP client will replace the core WordPress files on your website with the fresh ones from your computer.

Once the upload is complete, visit your website to see if the error is fixed. If the login issue is caused by a corrupted core file or malware, the error message should be gone, and you should be able to log in successfully.

Learn More WordPress Troubleshooting Solutions

Are you experiencing other common WordPress errors and need to find a way to fix them? Here are other articles you can check out:

We hope this article helped you resolve the WordPress login page refreshing and redirecting issue. You may also want to see our complete WordPress troubleshooting guide or check out our top picks for the best WordPress plugins and tools to grow your site.

If you liked this article, then please subscribe to our YouTube Channel for WordPress video tutorials. You can also find us on Twitter and Facebook.

Disclosure: Our content is reader-supported. This means if you click on some of our links, then we may earn a commission. See how WPBeginner is funded, why it matters, and how you can support us. Here's our editorial process.

Editorial Staff

Editorial Staff at WPBeginner is a team of WordPress experts led by Syed Balkhi with over 16 years of experience in WordPress, Web Hosting, eCommerce, SEO, and Marketing. Started in 2009, WPBeginner is now the largest free WordPress resource site in the industry and is often referred to as the Wikipedia for WordPress.

The Ultimate WordPress Toolkit

Get FREE access to our toolkit - a collection of WordPress related products and resources that every professional should have!

Reader Interactions

355 CommentsLeave a Reply

  1. Syed Balkhi says

    Hey WPBeginner readers,
    Did you know you can win exciting prizes by commenting on WPBeginner?
    Every month, our top blog commenters will win HUGE rewards, including premium WordPress plugin licenses and cash prizes.
    You can get more details about the contest from here.
    Start sharing your thoughts below to stand a chance to win!

  2. Eric says

    I had to rename /wp-content/object-cache.php. Hope that helps for anyone who the other steps don’t work for.

  3. Alisha says

    When i type myurl.com/wp-admin the page shows blank. I can’t see any login panel either nor does my website opens… what is the cause? :(

  4. Jeff says

    If you are having this issue, and nothing suggested here will work – log into the Cpanel and go into PHP My Admin, run a repair on your database table.

  5. Micah says

    Adding the code to the wp-config.php solved this for me.

    define(‘WP_HOME’,’http://example.com’);
    define(‘WP_SITEURL’,’http://example.com’);

    Thanks for the article! It took me 3 hours sifting through other posts before I found your post and the resolution that I needed!

    Micah

  6. Gordon says

    This problem can also occur if your server hosting WordPress has run out of disk space. Freeing up disk space can solve it.

  7. Friday0 says

    Sir please help me look at what am getting it started this night.

    Fatal error: Call to undefined function
    wp_is_mobile() in /home/u318928021/
    public_html/wp-login.php on line 39

    I don’t know what to do

    • WPBeginner Support says

      Seems like a plugin or your WordPress theme is causing this error. Deactivate all your WordPress plugins and check if this resolves your issue. If it does then you need to reactivate plugins one by one. This will help you find the plugin causing the error. If deactivating all plugins does not resolve the issue, then switch to a default WordPress theme like Twenty Fifteen. If switching theme resolves the issue, then the problem is your with your WordPress theme.

      Admin

  8. Luis says

    Thanks, it was a plugin conflict. I just deleted some useless crap via ftp and now it’s all sorted.

  9. Thomas Le Coz says

    You guys saved my ass. I was stuck outside a client site after messing with a SSL certificate and some stuff on managed account.

    Never encountered this issue before, got saved by your guide.

    Thanks ;)

  10. Eva Duli says

    Nothing of these work for me. I want to work the site localhost but when I am trying to login in the admin it redirects to the old admin login. Do you have any idea?

  11. Marco Panichi says

    My problem was that I hadn’t renew the database and the provider denied my user to insert/update the database.

    The error I received was: “INSERT command denied to user ‘Sqlxxxxxx’@’xx.xxx.xxx.xxx’ for…”

    So the solution in my case was:
    1) activate the debug into wp-config.php > define(‘WP_DEBUG’, true); in order to discover the problem
    2) renew the database

    Hope this help!

  12. JohnnZenith says

    I have a wordpress.com blog and all these instructions either are not relevant or I do not understand them, so I guess i’m going to leave it.

  13. chris says

    I cant find my .htaccess file? I can find it in my rootfirectory but not on my subdomain (where I have a whole new wordpress site). What do I do? It is my first time ever to log in to my subdomain wordpress.

  14. Kenny says

    The dreaded Internal Server Error and web host support quickly identified a corrupted .htaccess. Spent next 3 hours trying to find how to use my ImportBuddy when I didn’t have WP Admin access. Finally thought to check WPBeginner, found the .htaccess issue above and 30 seconds later had fixed the issue. Next time I come here first!

    Thanks guys and gals.

  15. Drew says

    Changing the wp-config.php file did it for me! This is the second time I’ve had this issue in two weeks, so I think the fix via htaccess was only a temporary solution.

  16. joel says

    Seriously a life saver! Corrupted .htaccess files was my issue. But following your steps helped me solve it. Much, much appreciated!

  17. Sumdi says

    Its working

    Have rename .htaccess and update WP_HOME, WP_SITEURL to proper URL in wp-config.php file….

  18. rubenjm says

    I had this issue, tried all these options and none worked for me.
    Finnally solved it… apparently my database was overloaded!! I had to login through phpmyadmin and delete and clean some tables. Hope it helps someone!

  19. Liviu says

    I did all of the proposed solutions, but nothing works for me! It keeps refreshing and redirecting it back to the login screen. Changing the folder of my current theme gives the white screen of death. It doesn’t revert to the default theme. Any other idea, please?

    Being at a dead end, I’m thinking to download all the site through ftp, make a new one site from WordPress and then upload one by one all my content. I’m worry however if I’ll be able to insert all the customization settings afterwards. The current theme was made custom by another person which cannot help anymore. Is it safe to do that? Thanks!

  20. Mary Anne says

    Thank you so much. I have WordPress pages built via my account with bluehost. One of my wordpress sites stopped working. I had the white screen of death.

    I followed each step in order, until I found the step that worked to resolve my problem. The step that worked for me was, Revert Back To Default Theme. Instead of using an ftp though, because I was having a hard time with my fetch working, I logged into my bluehost account and went into my file manager and then accessed my wpcontent/themes/directory that way for changing the title of my current theme.

    this worked perfectly. I was able to log back in and choose a different theme. Thank you again

    Mary

  21. Manish says

    Hello,

    Its not working for me. I had made every change into my site as per this tutorial still no luck. Added these two line in web config file.

    define(‘WP_HOME’,’http://www.siteurl.com’);

    define(‘WP_SITEURL’,’http://www.siteurl.com’);

    deleted .htaccess file. but still same problem. My site running on 1&1 hosting.

    Please help me.

    Thanks
    Manish

    • Umair says

      Dear manish , there is small change use it will definitely work

      1define(‘WP_HOME’,’http://example.com/wp-admin’);
      2define(‘WP_SITEURL’,’http://example.com’);

  22. Beck Abad Lastimosa says

    I have had my site for more than 6 months now and I finally decided to transfer hosting. After the transfer was successfully done, I as still able to access my login page. But these past few days has been a nightmare! I am was able to login to WP under the new DNS but as of this time, this problem suddenly occured:

    – Everytime I login to WP admin, I should see the login page right? But what I get is a download of wp-login.php. I have tried checking issues ith the guide of WP Codex. I tried contacting GoDaddy (my new host) but they told me they do not handle coding, etc. Right now, I’m on a dead end! I have tried different browsers but I still get a download of wp-login.php instead of the login page showing itself.

    I ould really appreciate it if you can help me.

  23. Thilip kumar says

    I Check with all the above but unable to login, I can ablre to see the login window, after I submitting login form. I Displays ‘.’ (Dot symbol)

  24. Alison Withers says

    You’re a godsend!!! Editing the config file to define the site address again did the trick.

  25. Isak says

    Did all of the above, nothing works. My main wp-login.php redirects me to one of my subdomains.

    This is how the redirect problem occured:
    1. My web hotel shut down my site, saying that it had been infected with malware.
    2. I changed all my passwords via PhpMyAdmin as well as to the database.
    3. I manually updated WP in my root directory as well as 2 out of 3 subdomains (the 3rd one already had the latest version) by uploading the new files and replacing the old ones, since I was not allowed to access my WP admin area.
    4. I manually added a .htpasswd and .htaccess to my root WP install and tried to access wp-login.php. I tried my 3rd subdomain (the one with the latest install of WP) first and it worked. After that, I tried my main domain and came to a page saying “update database”, so I did. After that I tried again, but every time I try to reach my root install or any of the other subdomains, I get redirected to my 3rd subdomain.

    Any ideas?

    • WPBeginner Support says

      Open the wp-config.php file on the root site. Add these two lines to your wp-config.php file:

      define('WP_HOME','http://example.com');
      define('WP_SITEURL','http://example.com');
      

      Replace example.com with your own domain. Also delete .htaccess file from all your subdomains and root domain. Once you get access to WordPress admin area on your root domain you need to go to Settings -> Permalinks and just save your permalink structure.

      Admin

  26. Jonny says

    WP_SITEURL did it for me. Seems illogical but it worked, so thanks for the tip! This only started happening recently to me – I wonder if it’s more prevalent with subdirectory installs with newer versions of WP.

  27. Anna says

    Thank You :)

    It was really helpful, great info … Resolved y issue by adding site name in wp-config.

    Regards,

  28. Peter Evans says

    Recently WP started getting me to login ever 5 of so minutes. I noticed that my wp-config.php did not have the following lines
    define(‘WP_HOME’,’http://example.com’);
    define(‘WP_SITEURL’,’http://example.com’);

    and when i inserted then the need to login was a less but I was then told that my session has expired and I needed to relogin in.

    This is very frustrating and I would be greatful if you could assist me. I am using WP 3.6.1

    Peter Evans

  29. Aamna says

    and Yes if your wp-config.php file does not provide you a solution.
    Try going to functions.php of your theme via ftp and add same two lines right below the <?php line and upload again. here you go !!!
    it works for me :)

  30. W.J.Kok says

    I use Epic Browser for testing because that browser will not store cookies (by default). Therefore clearing the caches will not delete all my stored passwords in the process.

  31. Brent Norris says

    Had a special case of the redirects all day. This particular post, out of about 20 keyed me in on a solution. Just wanted to say, “thanks!” Your perspective was a refresh after ten hours chasing down a solution.

    It was the part about generating a new .htaccess file that made the difference for me. Wish I could be more helpful to others but the problem I was having wasn’t very related and wouldn’t make a lot of sense to your readers.

    Aloha

  32. Adrian says

    Thanks a lot for the ‘Update Site URL’ fix. That solved an issue I was battling with for a while and saves me from any further headaches.

  33. Omar says

    This was really frustrating me but thanks to your tip on updating the URL my site is now working. Thanks!

  34. Paul says

    I normally get this error when working with multisite, normally it’s a cookie path problem which can be fixed by changing the wp-config.php.

  35. Robert Connor says

    I really needed this tutorial it happens to me all the time usually a plug in conflict. I am addicted to plugins. Thanks staff! Have a great day on purpose…

  36. Kartik eye says

    I had the same issue, few days ago. I was trying to enable the wpmultisite function for my new website with sub directories. My website is hosted on bluehost. I did everything step by step. But after editing all the files like wpconfig.php and htaccess. When I finally tried to login, I was getting a redirect to the same wp login page. I disabled the multiste and then everything was fine again. Please can you help with this?

    • lelebon says

      I tried everything — I said every little advice here — to no avail. Until I noticed I was using wp_config.php instead of wp-config.php. That simple! It solved my problem. HURRAY!!
      Anyways, thanks for the tips. Hope I can help someone too.

Leave a Reply to MuhdNurHidayat Cancel reply

Thanks for choosing to leave a comment. Please keep in mind that all comments are moderated according to our comment policy, and your email address will NOT be published. Please Do NOT use keywords in the name field. Let's have a personal and meaningful conversation.