首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Wordpress更换域名后无法访问

Wordpress更换域名后无法访问

原创
作者头像
潘晓可
修改2025-07-09 18:37:33
修改2025-07-09 18:37:33
2100
举报
文章被收录于专栏:服务器和容器服务器和容器
Wordpress
Wordpress

1. 问题描述

我的Wordpress是部署是通过Docker Compose与MySQL部署在一起的,网站的访问是通过Nginx反向代理给Wordpress的容器的。更换新域名后,我添加了新的解析,并重新生成了证书。在更新了Nginx的配置文件后,网站无法正常访问。

2. 连接到数据库

我先把MySQL的3306接口给发布出来,这样我可以从宿主机直接访问,因为MySQL容器里并没有MySQL的Client。

代码语言:bash
复制
#YAML文件的端口映射
    ports:
      - "3306:3306"
      - "33060:33060"

# 宿主机上连接到MySQL容器。
mysql -h 127.0.0.1 -P 3306 -u root -p

3. 更新WP Options里的主页设置

切换到Wordpress的数据库,然后更新WP Options里的HomeURL

代码语言:bash
复制
mysql> use wordpress_db;

Database changed

mysql> UPDATE wp_options SET option_value = 'https://collections.zenseek.site' WHERE option_name = 'siteurl';
Query OK, 1 row affected (0.00 sec)
Rows matched: 1  Changed: 1  Warnings: 0

mysql> UPDATE wp_options SET option_value = 'https://collections.zenseek.site' WHERE option_name = 'home';
Query OK, 1 row affected (0.00 sec)
Rows matched: 1  Changed: 1  Warnings: 0

4. 更新文章,页面,链接,图片链接等里旧域名

先按这个命令查一遍。这是更新之后的结果,没更新前会有很长的输出。

代码语言:bash
复制
mysql> SELECT ID, guid FROM wp_posts WHERE guid LIKE '%OLD_DOMAIN%';
Empty set (0.00 sec)

mysql> SELECT post_id, meta_key, meta_value FROM wp_postmeta WHERE meta_value LIKE '%OLD_DOMAIN%';
Empty set (0.00 sec)

mysql> SELECT ID, post_title, post_content FROM wp_posts WHERE post_content LIKE '%OLD_DOMAIN%';
Empty set (0.06 sec)

替换数据库里的旧域名。提示有多少个match和多少个changed了。之后再查一遍就跟上面的输出一样了。

代码语言:bash
复制
mysql> UPDATE wp_posts SET post_content = REPLACE(post_content, 'OLD_DOMAIN', 'zenseek.site');
Query OK, 100 rows affected (0.30 sec)
Rows matched: 330  Changed: 100  Warnings: 0

mysql> UPDATE wp_posts SET guid = REPLACE(guid, 'OLD_DOMAIN', 'zenseek.site');
Query OK, 329 rows affected (0.00 sec)
Rows matched: 330  Changed: 329  Warnings: 0

mysql> UPDATE wp_postmeta SET meta_value = REPLACE(meta_value, 'OLD_DOMAIN', 'zenseek.site');
Query OK, 5 rows affected (0.00 sec)
Rows matched: 473  Changed: 5  Warnings: 0

5. 其他思考

在没更新域名解析和生成新的证书前,可以在Wordpress的后台更改主页地址。其他的更新可以通过wp search-replace 'https://your-old-domain.com' 'https://your-new-domain.com' --all-tables来直接替换旧的域名。但是Wordpress的容器里进行了精简,并没有wp的命令。其次,在进行任何的数据库的操作之前,可以对数据库先进行备份。我是在别处还有一样的实例,所以这一步就略过了。

本来我自 我的博客

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

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

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

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

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1. 问题描述
  • 2. 连接到数据库
  • 3. 更新WP Options里的主页设置
  • 4. 更新文章,页面,链接,图片链接等里旧域名
  • 5. 其他思考
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档