0

我正在尝试让http://code.google.com/p/apnsd/上的 apns 守护程序正常工作,但我遇到了网络问题。我已将守护程序配置为侦听端口 1055(但我也尝试过其他端口)。我可以启动守护进程,它似乎工作正常(包括连接到苹果服务器),但是当我键入 netstat -a 时,我看不到网络端口正在打开和监听。我在 Windows 7 上运行,并关闭了 Windows 防火墙(所以我认为这不是防火墙问题)。

我已经在各种端口上成功运行了http://twistedmatrix.com/documents/current/core/examples/index.html (simpleclient.py & simpleserv.py) 上的扭曲演示服务器和客户端,并且还可以确认端口出现在 netstat -a 中,所以我认为问题不在于 OS/python/twisted/其他必需模块的安装/配置。

我相信dameon中的相关代码(自己添加的打印语句)是:

print "LISTENING TCP SERVER"
print "PORT", listener_data["port"], listener_data["port"].__repr__
server = internet.TCPServer(listener_data["port"], listener)
print server

我原以为在执行此行后,端口会在 netstat -a 中打开。任何人都可以提出问题所在,或提供有关如何进一步诊断的建议吗?

我认为这无关紧要,但我的 apns 守护进程配置是:

{
    'listeners': {
        'line': {
            'class': 'apnsd.listeners.line.LineProtocolFactory',
            # 'interface': "192.168.1.3",  #default: all interface
            'port':1055,
        },
    },

    'apps': {
        'gp': {
            'apns_dev': {
                'app_id':           "xxx",
                'app_class':        "xxx",
                'certificate_file': "F:/cert_file.pem",
                'privatekey_file':  "F:/pk_unencrypted.pem",
            },
        },
    }
}
4

1 回答 1

1

尝试使用 twistd 而不是 main.py 来启动守护进程。

twistd 脚本是 Twisted 的实用程序,用于将扭曲的应用程序转变为服务。用法是:

$PYTHON_ROOT/bin/twistd apnsd -c $APNSD_CONFIG

这会将 apnsd 作为守护进程启动。要不对其进行守护,只需传入 -n 参数:

$PYTHON_ROOT/bin/twistd -n apnsd -c $APNSD_CONFIG
于 2012-05-05T06:15:59.303 回答