歲月留聲

WordPress 后台提示「抱歉, 您不能访问此页面。」

今天把一个 wp 博客更换了域名,按以前方法操作完成,登录后台却提示「抱歉, 您不能访问此页面。」……哪里出问题了?细想一下,这次除了更换域名,还改了数据库表前缀。

WordPress 后台提示「抱歉, 您不能访问此页面。」 - 第1张图片

「WordPress 后台提示「抱歉, 您不能访问此页面。」:https://0xo.net/801」

上网一搜,果然,改了表前缀,有几个地方也得修改。WordPress 修改表前缀后,可能在登陆后台时会显示「抱歉, 您不能访问此页面。」或「您没有权限访问该页面」。

解决方法很简单,把数据表内改几处关联表前缀同步修改一下即可。下面是具体修改位置与方法:

这里假定原表前缀为 wp_,修改后为 wmi_

「WordPress 后台提示「抱歉, 您不能访问此页面。」:https://0xo.net/801」

1、修改「wp_options」,这里修改一个地方即可,将 option_name 字段值为 wp_user_roles 项修改为 wmi_user_roles 即可。

WordPress 后台提示「抱歉, 您不能访问此页面。」 - 第2张图片

2、修改「wp_usermeta」表,将 meta-key 字段中有旧表前缀的值,分别改为对应的新表前缀,需要修改的地方有:

「WordPress 后台提示「抱歉, 您不能访问此页面。」:https://0xo.net/801」
wp_capabilities
wp_usersettings
wp_user_level
wp_usersettingstime
wp_dashboard_quick_press_last_post_id

WordPress 后台提示「抱歉, 您不能访问此页面。」 - 第3张图片

附 WordPress 修改域名 sql 语句:

UPDATE wp_options SET option_value = replace(option_value, '://旧域名', '://新域名') WHERE option_name = 'home' OR  option_name = 'siteurl' ;  
UPDATE wp_posts SET guid = REPLACE (guid, '://旧域名', '://新域名') ;
UPDATE wp_posts SET post_content = REPLACE (post_content, '://旧域名', '://新域名') ;
UPDATE wp_comments SET comment_author_url = REPLACE( comment_author_url, '旧域名', '新域名' );

「WordPress 后台提示「抱歉, 您不能访问此页面。」:https://0xo.net/801」

退出移动版