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访问:

相关推荐
像风一样自由20202 小时前
52.Docker部署大模型应用从本地开发到服务化运行
运维·人工智能·docker·容器·大模型·智能体
sxgzzn2 小时前
如何利用电缆故障定位在线监测系统提升供电安全?
运维·重构·无人机·开关柜局放在线监测·gis局放在线监测
曦夜日长2 小时前
Git系统篇,Git本地使用(一):从“究极进化版“到三个区域的底层原理
大数据·linux·git·elasticsearch
mengchanmian3 小时前
VSFTP 服务器搭建(Centos)
运维·服务器·centos
shimly1234563 小时前
给断网无 sudo ubuntu22.04 机器安装 nodejs
linux
别动我齐刘海4 小时前
Linux 系统调试学习1
linux·运维·服务器·c++·学习·机器学习·机器人
Lsetea4 小时前
OpenSSL报certificate chain too long:error 22与verify_depth深度排查
linux·https·ssl证书·openssl·证书链
不像程序员的程序媛6 小时前
linux常见文本操作命令
linux·运维·服务器
wangbing11256 小时前
开发指南149-IotDB-常用命令
linux·运维·iotdb
Dovis(誓平步青云)6 小时前
常用命令藏得太深?怎么做一个快捷命令坞
运维·前端·自动化·音视频·prometheus