我更改了我的域名,REST API停止工作

时间:2022-01-30 作者:The Oracle

我正在建立一个word press网站,我的域名已从websiteold.comwebsitenew.com.

域传输由web服务器主机完成。

但是,我无法使用rest API,因为我更改了新域名。这是我从邮递员那里得到的错误。

{
    "status": "error",
    "error": "UNAUTHORIZED",
    "error_description": "Sorry, you are not allowed to access REST API."
}
我使用应用程序密码插件生成了一个新的API密钥,但是无论我使用生成的API密钥还是随机/错误的API密钥,我都会得到相同的响应。

关于为什么会发生这种情况的任何建议。这可能与与旧域名关联的配置有关。请建议怎么做。

2 个回复
最合适的回答,由SO网友:bueltge 整理而成

WordPress将安装域存储在数据库的多个位置。因此,您必须在许多表中更改它们。在工作的情况下,请查看options 表,条目siteurlhomeurl.也可以通过wp-config.php:

// Home URL of your WordPress.
define( \'WP_SITEURL\', \'https:/example.com\' );
// URL to the WordPress root dir.
define( \'WP_HOME\', \'https://example.com\' );
还可以查看wp-config.php 对于域,因为可以通过常量设置此值。这个.htaccess, 如果是Apache服务器,也应该进行验证,因为Permalink规则需要域,尤其是在“多站点”模式下。

您还应该激活debug mode, 常数WP_DEBUG 在中设置为truewp-config.php 要获取有关安装、问题的更多信息。它还应有助于在域更改后发现REST API的问题。

如果工作正常,请检查旧域的整个数据库。因为WordPress存储在不同的表中。可以通过SQL语句或插件(如“Serach Replace”)对其进行更改。有关更改URL的更多说明,请参阅codex-https://wordpress.org/support/article/changing-the-site-url/

SO网友:Lovor

您是否将WordPress数据库中的所有字符串从旧域更改为新域?您可以使用一些插件(例如更好的搜索替换)或wp cli。E、 g.要从旧域更改为新域,可以使用旧字符串:https://olddomain.com 和新字符串https://newdomain.com

此外,请尝试清除浏览器中的Cookie和重定向缓存(Windows上为ctr+shift+del,Mac上为cmd+shift+backspace)。

相关推荐

Migration Question

我正在试图弄清楚,对于我计划的一个非常重要的迁移,我是否正确地理解了迁移过程。我目前以Add On 我个人帐户上的域。www.example.com</我已经在我的经销商WHM系统上使用相同的域名为他们创建了一个帐户。www.example.com</我已经将他们的所有文件从我的个人托管帐户复制到我的HD</我会留下他们的MySQL DB和MySQL DB用户帐户,以防出现任何问题</我已经为他们的数据库创建了一个备份</现在据我所知,我所要做的就是:移除Add On 我个人