我在两台计算机上运行了couchdb(一台Windows 7,另一台Windows 8)。如果我不将couchdb作为Windows服务运行(Windows 7),我可以通过防火墙从远程计算机访问它。如果我运行一个couchdb实例作为Windows服务(同样,Windows 7),我只能访问它,如果我关闭托管我试图访问的实例的机器的防火墙。两种情况下CouchDB配置相同。 (这两台机器在本地网络上)
我对高级防火墙设置了解不多,但我尝试改变对我来说似乎合乎逻辑的内容并没有帮助。
防火墙设置中究竟需要更改哪些内容才能允许远程访问作为服务运行的couchdb实例?
更新:修正了!按照this link:
中1c的说明操作"(1c)Windows 7
导航到控制面板> Windows防火墙
点击"高级设置"在左侧窗格中。
点击"入站规则"然后"新规则"。
选择"端口",然后单击下一步,然后选择" TCP"并输入" 5900作为本地端口。
单击“下一步”,然后允许连接。
再次点击下一步,确保"域","私人"和"公共"都打勾了。
为防火墙规则命名,然后保存。"
并使用CouchDB的端口(5984)。
答案 0 :(得分:8)
您需要打开端口5984(CouchDB HTTP API)和6984(基于HTTPS的CouchDB)。从提升的命令提示符处,尝试:
netsh advfirewall firewall add rule name="CouchDB/HTTP" dir=in action=allow protocol=TCP localport=5984
netsh advfirewall firewall add rule name="CouchDB/HTTPS" dir=out action=allow protocol=TCP localport=5984
并重复6984。