Ubuntu启一个http server,通过terminal测试通不通

方法一:用python脚本

cd ~/source

mkdir -p code/python

cd /code/python

touch http_server.py

sudo gedit http_server.py

粘入如下代码:

import socket

def start_server(host='192.168.111.128', port=12345):

server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)

server_socket.bind((host, port))

server_socket.listen(5)

print(f"Server listening on {host}:{port}")

while True:

client_socket, addr = server_socket.accept()

print(f"Received connection from {addr}")

接收数据并发送响应

data = client_socket.recv(1024).decode('utf-8')

if not data:

break

print(f"Received data: {data}")

response = f"Echo: {data}"

client_socket.sendall(response.encode('utf-8'))

client_socket.close()

if name == "main":

start_server()

保存

python3 http_server.py

开启http服务

在打开第2个terminal

curl 192.168.111.128:12345

第1个terminal将打印:

二、直接启:

第1个terminal:

python3 -m http.server 8000

第2个terminal:

curl 192.168.111.128:8000

若curl工具包没安装,则按:

sudo apt install curl

也可以用wget访问:

相关推荐
SkyWalking中文站3 小时前
认识 Horizon UI · 5/17:3D 基础设施地图
运维·监控·自动化运维
tntxia20 小时前
linux curl命令详解_curl详解
linux
扛枪的书生1 天前
Linux 网络管理器用法速查
linux
SkyWalking中文站1 天前
认识 Horizon UI · 1/17:SkyWalking 新一代可观测性控制台
运维·前端·监控
顺风尿一寸1 天前
Java Socket 内核之旅:从 SocketChannel.read() 到 tcp_recvmsg 与 epoll 的完整调用链路
linux
雪梨酱QAQ1 天前
Kubeneters HA Cluster部署
运维
江华森1 天前
Spring Cloud 微服务全栈实战:从 Eureka 到 Docker Compose 一文贯通
运维
江华森1 天前
Matplotlib 数据绘图基础入门
运维
XIAOHEZIcode1 天前
Ubuntu 终端美化全栈指南:Bash 到 Kitty 踩坑实录
linux·ubuntu·命令行
江华森1 天前
NumPy 数值计算基础入门
运维