将wordpress从旧的ISP转移到新的ISP后,我在管理员访问/访问仪表板时遇到问题。
通过将所有文件(包括.htaccess)从旧服务器复制到新服务器,转储旧数据库并将其放在新服务器上并在wp-config.php中调整数据库的所有设置来完成传输。
通过在我的机器上设置主机条目,我可以验证一切正常,所有内容都会显示。
这是我的问题。
使用新旧凭据(例如手动添加管理员帐户)登录wp-login.php后,登录正在进行,将我重定向到网站,通过页面顶部的登录栏说明成功登录,但是说明禁止访问仪表板。
Sorry, you are not allowed to access this page.
除了转到wordpress.com或注销外,登录栏几乎没有其他选项。
这可能只是一件小事,我只需要有人指出我正确的方向。
答案 0 :(得分:17)
为我找到了完美的解决方案。
问题不在于将数据库迁移到新服务器,但是,如果迁移前缀在旧数据库和新数据库中不同,则会出现问题!
我的原始数据库前缀类似于 wp_71XXXXXX28 _ ,在新安装中,我使用的是 wp _ 。更改前缀只是解决数据部分,但仍然存在登录问题。
所以,我只是使用phpmyadmin搜索选项为 wp_71XXXXXX28 _ 搜索所有表格中的旧前缀,并将记录更改为 wp _ 。
注意:我在 wp_user 中找到5-6场比赛,在 wp_option 中找到1场比赛,你的可能会有所不同!
答案 1 :(得分:7)
听起来您的问题在于手动创建的管理员帐户。您看到的错误消息告诉我,分配给用户的权限存在问题。
您能告诉我有关手动添加帐户的步骤的更多信息吗?
我猜你是直接将用户添加到users表中,但是这样做之后,你是否将功能和用户级别信息添加到usermeta表中?
举个例子,如果我正在创建一个用户,我会运行一个查询,将用户插入wp_users
表(假设我们当然是标准表前缀)。
然后我会获取新创建的用户的ID,并使用它在wp_usermeta
中插入两个新行。
umeta_id
应为NULL,user_id
应为两个条目的新用户的ID。
1)
meta_key: wp_capabilities
meta_value: a:1:{s:13:"administrator";s:1:"1";}
2)
meta_key: wp_user_level
meta_value: 10
进一步阅读:http://www.wpbeginner.com/wp-tutorials/how-to-add-an-admin-user-to-the-wordpress-database-via-mysql/
答案 2 :(得分:7)
这可能是因为您手动更改了表名,然后显示此错误。 所以也将表格前缀更改为“用户名”'表格中的meta_key'柱
previousprefixthatyouchangeinnew_ to
你的问题已经解决了。
答案 3 :(得分:6)
当使用您自己的数据库表名前缀时,原来这是Wordpress 4.6.1中的一个错误。
重命名为wp_前缀并更改表名,它可以正常工作。
答案 4 :(得分:2)
迁移后我也遇到过此消息。
似乎数据库前缀区分大小写,如果它不完全匹配,则会在尝试访问管理页面时弹出。
确保检查config.php并将其设置为表格前缀。
如果使用phpMyAdmin检查表,则应注意数据库树中的所有表名都以小写形式显示,而在我的情况下,预期的前缀都是大写的。
phpMyAdmin图片:phpMyAdmin
图像中的右前缀是应该使用的前缀。
我使用“< prefix> _usermeta”表来获取WP预期的前缀。
答案 5 :(得分:1)
对于在我的情况下仍在寻找正确答案的任何人,这是我解决无法登录WordPress仪表板的问题的方法。
在“ wp_user_roles”选项名称下的数据库“ wp_options”表中,所有标准功能都丢失了。从数据库备份或从干净的WordPress数据库复制这些功能。
答案 6 :(得分:0)
使用搜索&替换原始wordpress站点的转储.sql文件以在新的wordpress站点上使用它,确保您覆盖所有。 我遇到了同样的问题并检查了wp_usermeta表,在meta_key列中我发现了一些以旧表前缀命名的键。更换它们解决了我的问题。