前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >WordPress更换域名让老域名https 301重定向到新域名

WordPress更换域名让老域名https 301重定向到新域名

作者头像
速企云
发布2024-03-02 11:12:39
1580
发布2024-03-02 11:12:39
举报
文章被收录于专栏:静下来静下来

以前给Wordpress网站换域名没有考虑过老域名还要301重定向的事情,因为老域名直接不用了,这次更换就遇到这个问题了,老域名还是继续要用,所以就得考虑301的问题了。

先再说下Wordpress更换域名的过程:

1、后台用插件替换

1.1、先到网站后台的常规设置去换成自己的新域名。

1.2、然后用我们开源的插件:WPBReplace 再去批量替换剩下网址就行。

WPBReplace下载:https://www.jingxialai.com/4251.html

2、数据库替换

直接到phpMyAdmin里面去执行下面的sql命令:

代码语言:javascript
复制
UPDATE wp_options SET option_value = REPLACE(option_value, 'https://旧域名', 'https://新域名');
UPDATE wp_posts SET post_content = replace( post_content, 'https://旧域名', 'https://新域名');
UPDATE wp_posts SET guid = replace( guid, 'https://旧域名', 'https://新域名');
UPDATE wp_postmeta SET meta_value = replace(meta_value, 'https://旧域名', 'https://新域名');

3、老域名https做301跳转规则

准备工作:老域名的ssl证书,如果是换服务器了,老域名也要解析到新服务器上。

这里是nginx的规则,在你的网站nginx文件里面新增一个443端口监听,我这里的规则只是演示,具体根据你自己的改。

上面的server是你新域名的正常规则,只是在下面新增一个server,用于老域名的跳转。

代码语言:javascript
复制
server
        {
        listen 80;
        listen 443 ssl http2;
        server_name www.新域名.com;
        ssl_certificate /usr/local/ssl/www.新域名.com.crt;
        ssl_certificate_key /usr/local/ssl/www.新域名.com.key;                            

        #其他规则

        }

server
        {
        listen 443 ssl http2;
        server_name www.老域名.com;
        ssl_certificate /usr/local/ssl/www.老域名.com.crt;
        ssl_certificate_key /usr/local/ssl/www.老域名.com.key;                            
 
        if ($host = www.老域名.com) {
        return 301 https://www.新域名.com$request_uri;
          }
        }

老域名也可以加上80端口,主要是看你之前的网站规则是怎么样的。

也可以用rewrite规则:

代码语言:javascript
复制
if ($host = www.老域名.com) {
    rewrite ^(.*)$ http://www.新域名.com/$1 permanent;
}

当然推荐用return,return更高效,rewrite会额外增加一次请求,它们的区别查看:https://cloud.tencent.com/developer/article/2393092

用nginx -t检查一下规则,如果没问题,就重启nginx,现在你的老域名https,就能正常跳转到新域名的https了。

现在查看浏览器状态或者找个工具查询老域名的http状态,应该就是301了。

如果你老域名没有用ssl证书,不是https,就不用这么麻烦了,只需要一个server就行:

代码语言:javascript
复制
server
        {
        listen 80;
        listen 443 ssl http2;
        server_name www.新域名.com www.老域名.com;
        ssl_certificate /usr/local/ssl/www.新域名.com.crt;
        ssl_certificate_key /usr/local/ssl/www.新域名.com.key;                            

        if ($host != www.新域名.com) {  return 301 $scheme://www.新域名.com$request_uri;  }

        #其他规则

        }

Apache规则:https://cloud.tencent.com/developer/article/1050161 不过这是我2015年写的,不知道规则现在还能不能用。

4、域名解析的方式做301跳转

这个方式更简单,只需要去加个域名解析就行了,但是不推荐!

国内域名做301网址跳转解析,也就是显性url转发,需要你域名已经实名,并且转发的网址需要已经备案。

国外域名301跳转一般叫:Web Redirect

解析商提供的转发没有用nginx规则灵活,并且可能出现不稳定、请求延迟的情况。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2024-3-1,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1、后台用插件替换
  • 2、数据库替换
  • 3、老域名https做301跳转规则
  • 4、域名解析的方式做301跳转
相关产品与服务
ICP备案
在中华人民共和国境内从事互联网信息服务的网站或APP主办者,应当依法履行备案手续。腾讯云为您提供高效便捷的 ICP 备案服务。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档