WordPress xmlrpc.php 301 永久移动

Mar*_*son 4 wordpress xml-rpc jetpack digital-ocean

我使用他们的 Wordpress Droplet 安装程序在 Digital Ocean 上设置了一个站点。然后我安装了 Jetpack。

站点运行状况工具报告 Jetpack 未连接,我应该访问 Jetpack.com 调试器。我这样做了并将我的网站放入。我得到的错误:

XML-RPC is not responding correctly ( 200 )
Run Code Online (Sandbox Code Playgroud)

当访问该网址时,mywebaddress.com/xmlrpc.php我只是被重定向到该网站的主网址。

按照 Jetpack 的建议,我去了一个航站楼并运行

curl -A 'Jetpack by WordPress.com' -d '<methodCall><methodName>demo.sayHello</methodName></methodCall>' https://mywebaddress.com/xmlrpc.php
Run Code Online (Sandbox Code Playgroud)

当我这样做时,我会得到以下结果。

<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>301 Moved Permanently</title>
</head><body>
<h1>Moved Permanently</h1>
<p>The document has moved <a href="https://mywebaddress.com/">here</a>.</p>
<hr>
<address>Apache/2.4.29 (Ubuntu) Server at mywebaddress.com Port 443</address>
</body></html>
Run Code Online (Sandbox Code Playgroud)

我已经检查了该.htaccess文件,其中仅包含注释。我已经检查过/etc/apache2/apache2.conf,发现那里没有重定向。

所以我的问题是,谁能告诉我导致 301 重定向的原因是什么?

Mar*_*son 6

找到了我刚刚找到这个文件的答案:

/etc/apache2/conf-enabled/block-xmlrpc.conf

这个里面有这个

<IfModule mod_rewrite.c>
    <Directory / >
        Redirect 301 /xmlrpc.php /
    </Directory>
</IfModule>
Run Code Online (Sandbox Code Playgroud)

该文件导致了重定向。目前已注释掉其内容。我没有创建这个,所以我必须假设 DigitalOcean 在执行 WordPress 一键安装时创建了它