开发者社区> 问答> 正文

python socket模块放到服务器上就跑不了了

话不多说直接放代码: 先说一下,下面出现的101.133.229.251是我服务器IP 客户端:

import socket
s = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
s.connect(('101.133.229.251',8080))
print('连接成功')
print(s.recv(1024).decode())
s.close()

服务端:

import socketserver
class myServer(socketserver.BaseRequestHandler):
    def handle(self):
        con = self.request
        con.sendall(b'hello world!!!')
        print('GoodBye!!!')
if __name__ == '__main__':
    server = socketserver.ThreadingTCPServer(('',8080),myServer)
    server.serve_forever()
    server.serve_close()

它那么短,没毛病啊!放在服务器上执行以下命令运行:

python3 /home/projects/server.py

到这一步为止一切正常,然而下一步我想让客户端同服务端建立连接,就直接在我自己的电脑上运行了客户端代码,结果得到如下报错: image.png

在客户端代码里的端口号是22时会连接成功,而端口22正是我的远程连接的端口

这咋整?求解!

展开
收起
游客k3k3saunqe33k 2020-02-18 03:37:09 883 0
1 条回答
写回答
取消 提交回答
  • 我ping了一下你的ip,发现无法连接,应该是8080端口没有开?或者没有部署http服务

    2020-03-25 16:11:01
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
如何运维千台以上游戏云服务器 立即下载
网站/服务器取证 实践与挑战 立即下载
ECS块储存产品全面解析 立即下载