我原以为:CouchDB CORS起源,设置为Web服务器的域,可以通过简单地在浏览器中输入URL来限制用户访问(读取)附件(图像)吗?
因此,如果你的沙发上有图像,我输入图像网址即......
http://couch.somewebdomain.com:5984/yourdatabase/thedocid/privateimage.jpg
我可以在浏览器中看到图像。我的请求的“起源”是什么?它不会是Web应用服务器吗?那么封锁了?
这有意义吗?
编辑:我有一个想法......我可以在PHP中编写一个http代理,或者在服务器上运行node.js。通过所有Couch http通过。将授权代码放在该代理中并将Couch CORS源设置为仅允许来自代理的http。
知道Couch的人真的可以提供一些建议吗?
答案 0 :(得分:0)
只有当您从CouchDB服务器域以外的域发出请求时,才会应用CORS。例如,考虑从http://mydomain.com/index.html
(通过javascript)到http://yourcouch:5984/db/...etc
的AJAX请求,在这种情况下CORS将适用。
如果您尝试限制用户访问,建议您将local.ini
变量[couch_httpd_auth] require_valid_user
设置为true
。这样,任何请求都必须使用有效凭证(即经过身份验证的用户)。