記事更新を押した所、「更新に失敗しました。返答が正しいJSONレスポンスではありません。」と表示されて更新ができなかった。
原因
サブディレクトリにwordpressをインストールし、サイトURLはルートを指定している。
しかし、ルートにはindex.phpを置かずに動かしているため、https://wp-json/wp/v2/postsにアクセスしてもwordpressのapiが動かなかった。
解決方法
/etc/nginx/nginx.confに以下を追加した。
location ~ ^/wp-json/ {
rewrite ^/wp-json/(.*?)$ /wp/?rest_route=/$1 last;
}
wp/の部分はwordpressのインストールディレクトリを指定。
https://example.com/wp-json/wp/v2/posts にアクセスが来たら、
http://example.com/wp/?rest_route=/wp/v2/posts に書き換える。