我已经启动了一个简单的python套接字,我可以从我的本地计算机上自由连接它,但是从iPad和另一台计算机上,我无法访问它!我做错了什么?这是我的代码:
from socket import socket
server = socket()
server.bind(("", 80))
server.listen(2)
message = """\
</pre><br><br><h1>Hi!</h1></body></html>
"""
while 1:
c, a = server.accept()
print "New connection from %s:%s"%tuple(a)
c.sendall("<html><head><title>Hi!</title></head><body><pre>"+c.recv(4096*20)+message)
c.close()
修改
顺便说一句,我使用的是Linux Fedora 18.在Windows上,我没有套接字问题。
答案 0 :(得分:2)
如果提供,source_address必须是要连接的套接字的2元组(主机,端口)作为其源地址才能连接。 如果主机或端口分别为''或0,则将使用操作系统默认行为。
默认行为可能在localhost上托管。尝试将主机设置为"0.0.0.0"
以允许在localhost之外进行连接。