我正在尝试使用PYRO4和Python 2.7将客户端计算机连接到其他网络中的服务器mashine

我的服务器代码是:

import Pyro4

class Thing(object):
    def method(self, arg):
        return arg*2

daemon=Pyro4.Daemon(port=9999,nathost="78.149.X.X", natport=5555)
uri=daemon.register(Thing(),"gameServer")  # register Thing() as a Pyro object
print "Ready. Object uri =", uri
daemon.requestLoop()


客户端代码为:

import Pyro4

server = Pyro4.Proxy("PYRO:gameServer@78.149.X.X:5555")
print server.method(6)


但是,当我运行服务器时,出现此错误:

CommunicationError: cannot connect: [Errno 10061] No connection could be made because the target machine actively refused it


自8个小时以来,我一直在搜索以解决此问题,但似乎不会永远解决。如果有人知道解决方案,请帮助我。

注意:
1.我对路由器后面的服务器进行了搜索,因此将端口5555改成了我的专用IP地址。另外,我通过在线服务测试了端口并正确打开了端口。


我关闭了防火墙和防病毒软件。

最佳答案

您是否尝试过manual中提到的所有建议?

您的守护程序根本无法在您认为是的地址上访问。也许您需要向守护程序构造函数调用中添加适当的绑定主机,以将其绑定到可从外部访问的网络接口上。

另外,尝试一一消除可能的原因,并找出是哪一个原因。例如,您是否尝试在没有路由器的情况下运行它?

关于python - PYRO4-Errno 10061连接被拒绝,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/31372515/

10-15 00:47
查看更多