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

相关推荐
ccino .2 小时前
【官方最新VMware workstation pro获取】
运维·网络安全·自动化
草莓熊Lotso4 小时前
Linux 基础 IO 初步解析:从 C 库函数到系统调用,理解文件操作本质
linux·运维·服务器·c语言·数据库·c++·人工智能
Cx330❀4 小时前
从零实现Shell命令行解释器:原理与实战(附源码)
大数据·linux·数据库·人工智能·科技·elasticsearch·搜索引擎
学嵌入式的小杨同学10 小时前
从零打造 Linux 终端 MP3 播放器!用 C 语言实现音乐自由
linux·c语言·开发语言·前端·vscode·ci/cd·vim
EverydayJoy^v^10 小时前
RH134学习进程——十二.运行容器(1)
linux·运维·容器
syseptember10 小时前
Linux网络基础
linux·网络·arm开发
b***251110 小时前
电池组PACK自动化生产线的关键流程与核心优势
运维·自动化
zl_dfq11 小时前
Linux 之 【多线程】(线程的概念、Linux中的线程、页表)
linux
郝亚军11 小时前
如何在Ubuntu和win10/11之间通过samba访问对方的文件
linux·服务器·ubuntu