Fauxton (менеджер CouchDB) за Nginx не работает полностью. После блока Nginx из CouchDB Вики совсем не работает:
location /couchdb {
rewrite /couchdb/(.*) /$1 break;
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 /couchdb
расставаться с location ^~ /couchdb
, он начинает работать, по крайней мере, отображая Fauxton.
Инспекция (Chromium Inspector) показывает проблему как /_session
URL запрашивается у https://example.com/_session
вместо того https://example.com/couchdb/_session
, что означает, что Fauxton не может правильно определить, что он обслуживается в подкаталоге (добавляя блок прокси для /_session
url решает проблему 404) Вот почему я сбросил запрос на хост CouchDB с nc -l -p 5984
чтобы увидеть, какие заголовки установлены:
GET /_utils/ HTTP/1.1
Host: example.com
X-Forwarded-For: 127.0.0.1
X-Real-IP: 127.0.0.1
Я не уверен, что X-Forwarded-For
заголовок установлен правильно или нет. Какие здесь ожидаемые заголовки? Как я могу определить, связана ли проблема с моей настройкой Nginx или есть другая проблема, например, с моим брандмауэром (iptables
) настройки?
Возможная проблема связана с Fauxton, а не с CouchDB: https://github.com/apache/couchdb-fauxton/issues/944