Nginx
如何使用 Nginx 作為反向代理在非根位置使用 Fauxton 託管 CouchDB
CouchDB 與 Fauxton 版本捆綁在一起,該版本有一個嚴重錯誤,如果 CouchDB 託管在非根位置,則該錯誤會阻止 Fauxton 工作。因此,如果您想將 CouchDB 託管在
/couchdb
,那麼捆綁的 Fauxton/couchdb/_utils
將嘗試在根位置/
而不是location 訪問 CouchDB/couchdb
,從而導致 Fauxton 功能中斷。GitHub上的以下問題更詳細地解釋了該問題:
- https://github.com/apache/couchdb-fauxton/issues/1199
- https://github.com/apache/couchdb-fauxton/issues/944
- https://github.com/apache/couchdb-fauxton/issues/1188
是否可以使用 Nginx 作為反向代理在非根位置使用 Fauxton 託管 CouchDB,如何實現?
我一直在 Nginx 後面的子文件夾位置使用 Fauxton,配置如下:
location ^~ /mycouch/ { proxy_pass http://192.168.2.5:5984/; proxy_redirect off; proxy_buffering off; proxy_set_header Host $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; }
需要注意的幾點:
- 是
proxy_pass http://...5984/;
。注意/
最後的。- 你應該輸入
http://example.com/mycouch/_utils/
. 注意/
最後的。- Fauxton 本身存在問題(
Unexpected token < in JSON at position 0
錯誤),請按照此配方建構和安裝最新版本的 Fauxton。