WordPress更换域名后-后台无法进入,网站模版错乱,css失效,网页中图片不显示。完整解决方案(含宝塔设置)

我在实际解决问题时用到了

【简单暴力解决方案】的《方法一:修改wp-config.php》

【简单暴力-且特别粗暴-的解决方案】

更换域名时经常遇到的几个问题:

1、更换域名后,后台无法进入

2、更换域名后,网站模版错乱,css失效

3、更换域名后,网页中图片不显示

这是为什么呢?因为网站更换域名时,需要进行新旧域名的全面替换操作后才可以正常访问,如果你只替换了一部分就可能会出现网站访问错误,有些相关的自定义栏目尤其是网页图片附件的地址信息等都是通过带有原来域名地址的绝对路径保存在数据库中的。本文就教大家如何更好的替换WordPress网站域名,在数据库中进行相关的新旧域名的替换操作,其实很简单,几个简单的数据库执行语句就可以完成了。


简单暴力解决方案

方法一:修改wp-config.php

1、在wp-config.php中,添加以下两行内容:

define('WP_HOME','新网址');

define('WP_SITEURL','新网址');

2、登录后台,在 "常规 -> 设置"重新配置新博客地址(HOME)和安装地址(SITEURL),成功后一定记得删除上面添加的内容。

方法二:修改functions.php

注意,你得知道你引用的是那个模版;如果不知道,

可以参照《方法一:修改wp-config.php》

进入后台后,查看下

外观》主题》

functions.php指的是位于当前博客主题目录内,可以自定义一些主题函数。

1、在functions.php中,添加以下两行内容:

update_option('siteurl','新网址');

update_option('home','新网址');

2、登录后台,在 "常规 -> 设置"重新配置新博客地址(HOME)和安装地址(SITEURL),成功后一定记得删除上面添加的内容。

方法三:修改wp-config.php(自动更新地址)

1、在wp-config.php中,添加下面一行内容:

define('RELOCATE',true);

2、登录后台地址,WP将自动更新安装地址(SITEURL),手动修改博客地址(HOME)地址即可,成功后一定记得删除上面添加的内容。

很明显,第三种是最简单的,无需填写新的网站域名地址,最重要的是一定记得删除添加过的内容哦。
以上内容转摘:

WordPress更改域名无需修改数据库的三种方法_wordpress 数据库替换绑定域名_xian2018的博客-CSDN博客


简单暴力-且特别粗暴-的解决方案

第一步:wordpress更换域名最简单方法

如果进不去后台(仪表盘),可以参考

【简单暴力解决方案】的《方法一:修改wp-config.php》和《方法三:修改wp-config.php》

首先我们说一个wordpress网站最简单的更换域名方法。登录后台,仪表盘------设置------常规,然后换域名,将里面的WordPress 地址(URL)和站点地址(URL)都修改为新的域名,然后点击保存更改。

但是这个方法容易出现上面所说的第3个问题,就是有些文章中图片会出现地址错误,所以只适合刚简化的网站。如果运行一定时间后的网站,我们就可以使用数据库进行域名替换。

第二步:数据库替换域名方法

1、使用phpmyadmin打开我们的数据库,找到wp_options数据表。在其中找到siteurl、home这两项,点击编辑,将原来的域名修改为你新的域名。这个方法和上面通过网站后台修改域名的方法效果是一样的,但是这个方法适合于当我们打不开网站后台的时候。

注意,wp_options前面的wp,也可能是其他字母,这个取决于你当时创建数据库时是否进行过修改,比如我这个就是原来修改过的。

使用这个方法批量替换更简单一些

sql 复制代码
UPDATE wp_options SET option_value = replace(option_value, 'http://LaoYuMing.com', 'http://XinYuMing.com') WHERE option_name = 'home' OR option_name = 'siteurl';

UPDATE wp_posts SET post_content = replace(post_content, 'http://LaoYuMing.com', 'http://XinYuMing.com');
UPDATE wp_posts SET guid = replace( guid,'http://LaoYuMing.com', 'http://XinYuMing.com');

UPDATE wp_postmeta SET meta_value = replace(meta_value, 'http://LaoYuMing.com', 'http://XinYuMing.com');

UPDATE wp_comments SET comment_content = replace(comment_content , 'http://LaoYuMing.com', 'http://XinYuMing.com');
UPDATE wp_comments SET comment_author_url = replace(comment_author_url, 'http://LaoYuMing.com', 'http://XinYuMing.com') ;
sql 复制代码
复制代码时,注意修改,数据库表名前缀

说明:

1、以上命令中**"LaoYuMing.com"** 代表你的老域名,**"XinYuMing.com"**代表你的新域名。

其中的 wp_ 是你的数据库表前缀,根据自己安装WordPress网站时的自定义表前缀可能会有不同,比如我的这个数据库中这里是bd,输入命令时我们就要手动修改一下。

2、wp_options:home (字段)和 siteurl(字段) -- 您网站的网址。如果要更改站点URL,请更新此字段。

3、wp_posts

post_content(字段) -- 这是存储所有文章和页面内容的地方。您的 文章 和页面中的所有链接都将位于此字段中,如果您要更改网站网址,则应将其替换。

guid(字段) -- 全局唯一标识符以URL的形式显示在此字段中。即使您的网站网址发生更改,也无意更改此字段。将GUID视为唯一的哈希值。改变它将意味着馈送器将突然再次在用户的阅读器中显示您的所有内容作为新内容。如果您了解可能的影响,请更改此项。(了解更多)

4、wp_postmeta

meta_value -- 文章和页面存储其字段和属性的位置,例如,您添加的任何自定义字段,包括插件高级自定义字段(ACF)设置的任何字段。

5、wp_comments

comment_content(字段) -- 包含来自您的用户和回复的所有文章评论,其中可能包含指向您网站上其他文章的链接。

当然,以上几个域名更换方法的前提是,我们也要做好域名的解析和绑定工作,在正确的解析和绑定之后再进行域名替换,就可以很顺利的完成了。

以上内容转载:

wordpress更换域名的几种方法,简单又快捷_wordpress换域名_秋梦先生的博客-CSDN博客


【注意】如果经过上面的两种方案你还是没有解决请看下面内容

更改 WordPress 网站域名后,需要更新 WordPress 网站地址和数据库中的网站地址,并清除浏览器缓存和 Cookie。如果仍然无法访问后台,请检查 .htaccess 文件是否正确配置。

有时,浏览器缓存和 Cookie 可能会导致 WordPress 后台跳转到旧域名。尝试清除浏览器缓存和 Cookie,然后重新登录后台。

2.检查 .htaccess 文件

如果您在更改域名时手动编辑了 .htaccess 文件,则可能会导致 WordPress 后台跳转到旧域名。检查 .htaccess 文件中是否有任何旧域名的引用,并将其更新为新域名。保存更改后,尝试重新登录后台。

3.检查服务器缓存

4.检查域名和站点缓存

5.检查宝塔(异或是其他第三方)

网站》你的站点》设置(在站点列表最右侧的"操作选项中")

点击"设置"或者双击你站点名称,进入设置页面

在设置里面有个"配置文件"

代码第5行

sql 复制代码
server_name 域名1 域名2 域名3;
sql 复制代码
server_name www.jijiyuan.cn www.jijiyuan.com jijiyuan.cn;

代码第38行

sql 复制代码
valid_referers none blocked 域名1 域名2 域名3;
sql 复制代码
valid_referers none blocked www.jijiyuan.cn www.jijiyuan.com jijiyuan.cn;

在该代码上面写着【#SECURITY-START 防盗链配置】

完整代码如下

sql 复制代码
    #SECURITY-START 防盗链配置
    location ~ .*\.(jpg|jpeg|gif|png|js|css)$
    {
        expires      30d;
        access_log /dev/null;
        valid_referers none blocked www.jijiyuan.cn www.jijiyuan.com jijiyuan.cn;
        if ($invalid_referer){
           return 404;
        }
    }
    #SECURITY-END

以上内容参考:

WordPress 更换域名后访问后台跳转老域名解决办法_编程设计_IT干货网

第5项【5.检查宝塔(异或是其他第三方)】这个是我亲身经历


延伸阅读:

WordPress 文件和目录结构初学者指南

WordPress 文件和目录结构初学者指南 - 知乎