如何让Wordpress JSON-API在Nginx服务器上工作?

如何让Wordpress JSON-API在Nginx服务器上工作?,nginx,json-api,wordpress-json-api,Nginx,Json Api,Wordpress Json Api,出于某种原因,“开箱即用”的Wordpress JSON API在Nginx上不起作用。我在nginx conf中尝试了几种重定向方案。我唯一能做的就是?json。但是,这不适用于身份验证和注册 仅供参考,我正在开发cordova应用程序,并尝试将WP JSON API用于WP后端。我找到了问题的解决方案。确保permalinks工作正常,然后再假设(像我一样)这是插件的问题 我能够在nginx站点的子目录中更正wordpress站点的永久链接。如果您面临同样的问题,本文将对您有所帮助 loca

出于某种原因,“开箱即用”的Wordpress JSON API在Nginx上不起作用。我在nginx conf中尝试了几种重定向方案。我唯一能做的就是
?json
。但是,这不适用于身份验证和注册


仅供参考,我正在开发cordova应用程序,并尝试将WP JSON API用于WP后端。

我找到了问题的解决方案。确保permalinks工作正常,然后再假设(像我一样)这是插件的问题


我能够在nginx站点的子目录中更正wordpress站点的永久链接。如果您面临同样的问题,本文将对您有所帮助

location / {
    # http://v2.wp-api.org/guide/problems/#query-parameters-are-ignored
    try_files $uri $uri/ /index.php$is_args$args;
}

location ~ ^/wp-json/ {
    # if permalinks not enabled
    rewrite ^/wp-json/(.*?)$ /?rest_route=/$1 last;
}

我的案例是在我的网站根目录下的子目录上部署wordpress,下面是使其工作的步骤

  • 网站根目录是
    /www/wwwroot/www.abc.com/public/
    -通过
    www.abc.com
  • wordpress目录是
    /www/wwwroot/www.abc.com/public/blog/
    -通过
    www.abc.com/blog/
    访问
  • 下载wordpress并将其解压缩到您的web根目录,然后将其重命名为
    blog
  • chmod-R www:www-blog
    -在web根目录中运行此命令
  • 将以下行添加到nginx配置文件中
  • 位置/博客/{
    index.php;
    try_files$uri$uri//blog/index.php?$args;
    }
    
    是否有抛出的错误?源代码?我找到了答案,贴在下面。谢谢你的提问!你从不怀疑最简单的事情,谢谢;节省了我很多时间!对于那些想知道如何修复它的人:转到设置=>Permalinks=>选择一个选项(我使用了post name)=>保存更改=>验证/wp json路由是否正常工作奇怪的是,即使正确配置了Permalinks,在某些环境中似乎也需要此解决方案。我不确定,可能是因为插件或主题代码的问题,或者浏览器本身的资源行为。。。我需要将它添加到我的nginx.conf中,以便运行在AmazonLinux2(AMI)中的wordpress网站至少在我的nginx配置中仍然需要它。现在,在古腾堡添加链接的搜索功能又开始工作了,无论我输入什么,它只会显示最新的帖子。谢谢你。