部署了两个wordpress服务端使用相同的域名,并且部署了负载均衡,但是通过域名只能访问第1台服务端是为什么?

部署了两个wordpress服务端使用相同的域名,并且部署了负载均衡,但是通过域名只能访问第1台服务端是为什么?

1、环境部署

主机名ip地址用途
lb0110.0.0.231负载均衡代理服务器
web0110.0.0.232wordpress服务端1
web0210.0.0.233wordpress服务端2
db0110.0.0.234数据库

2、问题概述

  • 在使用ansible剧本一键部署wordPres时出现此问题,两个wordpress使用的是同一个域名,想通过代理服务器自动分配访问的服务端,但是在访问的时候,发现每次通过lb01访问都只能访问web01,访问不了web02服务端

  • 然后尝试直接访问web02时,发现也是会自动跳转到web01上面

image-20230217210429172

3、问题猜想

  • 可能是lb01、web01、web02上的nginx服务有问题,子配置文件,站点目录,域名是否写对
  • 可能是web01、web02上的php-fpm服务有问题,导致无法解析站点目录里的配置文件???
  • 数据库授权有问题??? 最先排除的就是这个,因为网站已经登录了,不可能是授权问题

4、解决办法

以上猜想中的全部检查了,没有问题

请教了某位大佬:在安装wordpress的时候,选择的是ip安装,而不是使用域名去安装的,导致我数据库里的信息保存的只有10.0.0.232这一个ip地址,所以每次访问的时候,都会跳转到web02服务端上!

  • 我在数据库里查询了一下,果然,url指定的是10.0.0.232这台服务器,而不是域名…

image-20230217211437842

我以为只有这一处地方改过来就可以,可惜数据库相互关联,写入的不只这一个地方

解决办法需要将wordpress程序安装的数据库里面所有包含10.0.0.232的表信息都改为blog.cn(自定义域名)

一张一张的表去改特别麻烦,而且根本不知道哪张表里有这个信息,容易漏下,所以我这里把这个库使用mysqldump导出,使用文本替换功能再导入即可

  • 1、导出这个库,我的库名就叫做wordpress
mysqldump -uroot -p123 --databases wordpress >/tmp/wordpress.sql
  • 2、将wordpress.sql文件复制到windows上,使用文本编辑器强大的替换功能,将所有的10.0.0.232替换为blog.cn

image-20230217212533452

  • 将替换后的文件传输到db01上,删除原来的wordpress库,导入新库
drop database wordpress;
source wordpress.sql;
  • 查询新库里wordpress的url

image-20230217212900757

  • 尝试访问web02服务端,或者访问lb01看看能不能自动轮询两台服务器

image-20230217213041182

BTW:查阅了好多资料都没有找到类似的案例,解决方案仅供参考,因为相同的故障可能不只一种问题导致的。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值