复制网站到本地后,WordPress首页重定向到重复的副本
P粉459440991
P粉459440991 2024-03-31 15:26:18
0
2
343

背景: 我有多个网站使用 nginx 和 wordpress 在 rpi4 上运行。我想将其中一个站点复制到我的本地网络以进行开发和测试。我复制了数据库和 WordPress 文件,并设置了配置文件以侦听端口 8082 和备份数据库。原始网站是安全的,并使用 https 连接证书,但显然本地副本不会。

当我访问网络 192.168.0.213:8082 上的网站时,它转到主页,但我无法访问登录页面,因为我尝试的每个链接都被重定向到我的实时网站。所以我通过 mysql 语句更新了站点 url 和主页 url,并且能够访问登录页面,并且所有其他链接都可以工作,除了现在的主页。现在主页将我重定向到:

192.168.0.213:8082/192.168.0.213:8082/

这是一个不存在的页面。我觉得如果我能解决这一问题,我就非常接近实现我想要的目标了。因为它是 nginx,所以没有 .htaccess 文件,但我很乐意修改我需要的任何内容,并且具有 root 访问权限来执行任何操作。我知道sql、命令行等...,但之前没有这样做过并且卡住了。我不确定我要在 php 文件中寻找什么来更改或调整,以便它不会将自身添加到自身中。

我尝试了在这里找到的修复程序,主要是添加我所做的“http://”。我对此仍然是个菜鸟,想知道我是否没有正确引用我的本地主机。

是的,这是一个名为“chadsmancave”的博客网站,所有内容的副本都是 chadsmancavebkp。我可以确认我确实托管了两个版本,因为对数据库的更改仅反映在本地版本中,而不反映在我发布的版本中。

以下是一些屏幕截图,希望能有所帮助:

P粉459440991
P粉459440991

全部回复(2)
P粉477369269

我正在回答这个问题,但要接受 Chris Haas 的回答,因为他所说的解决了问题。

确实,我使用的是 Chrome,它保留了该重定向!不是 f5,否则任何东西都会通过它,直到我彻底清除整个浏览器数据。

一旦他说到浏览器和 Chrome,我就到我家的另一台机器上输入地址,结果为零。就在那时我知道我一直在用的浏览器做这一切都是原因!

谢谢你。谁知道我会在这上面浪费多少时间,甚至放弃。再加上开发人员在这方面浪费的 5-6 个小时的时间。 XD

P粉145543872

我几乎每天都会移动网站。

首先,获取并安装已安装的官方 WP CLI

接下来,从您要移动的站点,将 cd 移至 WordPress 根目录并使用以下命令导出数据库:

wp db dump

这将在该目录中创建一个 SQL 转储文件。将该文件移动到 WordPress 根目录中的新位置 cd 并使用以下命令导入它(显然适当地替换了文件):

wp db import your-file-here.sql

最后,仍然在新位置时运行搜索替换命令:

wp search-replace "http://example.com:1234" "https://example.com:5678" --recurse-objects --all-tables --dry-run

第一个 URL 是旧的,第二个 URL 是新的。确保准确,包括协议(HTTP 与 HTTP)、域(www.example.com 与 example.com)。 com)和端口。也不要在没有协议的情况下运行它,它可能会也可能不会达到您的预期。同样,不要使用尾部斜杠运行它(例如 https://example.com/),因为这会产生其他影响。

下一个参数 (--recurse-objects) 指示 CLI 反序列化对象并遍历它们,这是安全更新元和选项表所需的。

下一个参数(--all-tables)仅表示遍历包括插件的整个数据库。

最后一个参数(--dry-run)意味着不会进行任何更新。始终在打开它的情况下运行,直到确定没有任何拼写错误,然后在没有它的情况下运行命令。

注意

此外,在执行、导入或更新之前始终先进行数据库备份,以防万一:

wp db dump

附加说明

search-replace 命令还有一个名为 --export 的选项,您可以使用该选项并跳过初始转储。然而,我个人并不这样做,因为如果我从实时备份到开发服务器,我不想在实时服务器上产生任何额外的 CPU/IO,我希望这种负担稍后发生在开发服务器上在。我也可以有条件地使用它,但我只是喜欢有一个我在任何地方都使用的命令设置。

还有一点

浏览器,特别是 Chrome,往往会记住重定向,至少暂时是这样。因此,在测试该举措是否确实有效时,我强烈建议始终在私密浏览窗口中进行测试。我无法告诉你我和其他开发人员因此损失了多少时间。一旦确定已更新,您就可以返回到普通浏览器。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!