nginx - pouchdb 不会在 nginx 服务器上同步创建远程数据库,导致 GET 和 POST 出现大量 404
问题描述
我在 localCouchDb ( http://localhost:5984/testdb ) 上添加了基本身份验证。并且同步适用于凭据。
在我在 nginx 上配置的remoteCouchdb (http: remote_ip /testdb) 上,带有以下代码段:
server {
listen 80 default_server;
listen [::]:80 default_server;
server_name myDomain.com www.myDomain.com;
location / {
proxy_pass http://localhost:5984;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
location ~ ^/(.*)/_changes {
proxy_pass http://localhost:5984;
proxy_redirect off;
proxy_buffering off;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
我在local.ini文件中为本地和远程 couchDb启用了WWW-Authenticate = Basic realm="administrator" 。
在 remoteCouchDb 上,我也有相同的凭据,似乎可以正常工作。但是在同步操作时,我收到了越来越多的错误,如下所示:
GET http://***remote_ip***/testdb/_local/x8B36az7Yezgye.7zCNXwA%3D%3D? 404
POST http://***remote_ip***/testdb/_revs_diff 404 (Object Not Found)
看起来,同步操作无法在远程创建testdb。通过点击“http:// remote_ip /testdb”进行验证。
我可以在 localCouchDb ( http://localhost:5984/_utils/ ) 和 remoteCouchDb (http:// remote_ip /_utils/) 上访问 Futon 页面。
唯一不同的是couchDb的版本;在本地,couchDb 版本是“1.6.0”,在远程它是“1.6.1”。这是一个问题还是我错过了 remoteCouchDb 上的任何配置?
解决方案
虽然我对我提出的问题感到尴尬,但我找到了解决方案。与 couchdb 1.6.0 不同,您必须在 1.6.1 中创建数据库,实际上与 2.1.2 相同(所以我猜从版本 1.6.1 开始我们需要自己创建数据库)。
推荐阅读
- python-3.x - 哪种 gunicorn worker 类型用于机器学习推理?
- android - 在运行时路由查询期间无法到达 HERE 服务器
- css - 为什么将“过滤器”应用于 DOM 元素会破坏任何具有“位置:固定”的子元素
- typescript - 当我使用 webpack 和 ts-loader 构建项目时,Typescript 环境模块未解析
- c++ - 哈希映射是如何在 C++ 中实现的?
- sql - 如何从子查询更新表
- html - 静态 django css 文件未加载
- r - 在 Shiny 中单击按钮后如何打开新表单
- json - 如何使用 react-i18next 使用 .map() 翻译对象数组中的数据
- mongodb - 是否可以对聚合管道中的每个文档应用不同的聚合投影?