WordPress登录问题

0条评论

登录WordPress管理面板时遇到问题时可以参考下面这些解决方法。

激活Cookies

确定浏览器的cookies已被激活。

  • 清除浏览器cookies
  • 清除浏览器缓存

禁用插件

有些插件可能会影响登录进程。如果登录出现问题,可以在管理面板中禁用所有插件或者移除/wp-content/plugins/ 文件夹中的插件,使之不再影响登录。

新的登录文件

有时wp-login.php文件会因内部出错或被错误上传而影响登录。

  • 从服务器上删除wp-login.php文件,上传一个重新下载的副本。记住,通过FTP改写文件会导致传输不完整。
  • 根据以下说明编辑wp-login.php文件:
    • 进入case retrievepassword版块,该版块在以下注释后:
      // redefining user_login ensures we return the right case in the email  

      将其中的:

      $user_login = $user_data["user_login"];  

      替换成:

      $user_login = $user_data->user_login;  

编辑用户表

使用phpMyAdmin并仔细修改数据库。

  • 打开WordPress数据库
  • 单击左侧菜单中的用户表(默认为wp_users,如果用户定义了其它表前缀,则用户表名为新前缀_users)
  • 点击浏览
  • 再单击管理员用户旁的编辑按钮
  • 删除密码输入框中的所有信息
  • md5 散列计算器中输入新密码,复制生成的散列表
  • 将复制内容粘贴到admin用户的密码区域
  • 在数据库中保存该信息
  • 用"admin"与用以生成散列表的新密码登录WordPress
  • 在较新的WordPress版本中,密码会被重复散列计算,但只要对密码进行md5算法加密,新密码就会自动生成了。

密码问题

如果是因为密码错误而无法登录,请参考重设WordPress密码

切记,用户名和密码字段都是区分大小写的!

网站URL重定向

在某些情况下WordPress网站的URI可能会被重设。

  • 在WordPress数据库的wp-options表中查看siteurl的值,这里有一个操作介绍。
  • siteuri的值是否为http:/? 格式
  • 如果是,将site_url改成相应格式
  • 在文本编辑器中打开wp-login.php文件,注释或删除以下命令行:
    // If someone has moved WordPress let's try to detect it
    //if ( dirname('http://' . $_SERVER['HTTP_HOST'] . $_SERVER['PHP_SELF']) !
    = get_settings('siteurl') )
     // update_option('siteurl', dirname('http://' . $_SERVER['HTTP_HOST'] . $_SERVER['PHP_SELF']) );

     

安全HTTPS

如果遇到HTTPS安全问题,可以将wp-includes/vars.php中的:

define('COOKIEPATH', preg_replace('|http://[^/]+|i', '', get_settings('home') . '/' ) );

改为:

define('COOKIEPATH', preg_replace('|https?://[^/]+|i', '', get_settings('home') . '/' ) );

当然要记得把选项中的URL也改成https://

Headers Already Sent信息

参见FAQ中的Solving the Headers Already Being Sent Problem

检查URL选项

有时可以从域名内访问博客,但不能进行外部访问。即使根据上文中更改wp-options MySQL表进行操作也无法登录。

这时可以双击wp-options表中的siteurl值(WordPress网站URL)和home值(博客地址URL),检查两者是否引用同一个可用的外部地址,如http://blog.yourdomain.com。标准WordPress安装可能会使两者引用本地(内部)主机名,如http://servername

检查防火墙设置

有些防火墙(如eTrust Personal Firewall)会阻止用户登录WordPress。这时可以禁用防火墙,然后再次登录。

如果以上方法都不管用

如果以上方法都不管用,上论坛求助吧,告诉人们你试过的各种方法。一定要给出你所知的服务器设置的详细情况,包括遇到问题时的mySQL和PHP版本、操作系统、浏览器以及WordPress版本。