不需要高深技术,只需要Python:创建一个可定制的HTTP服务器!

2024-03-03 01:40

本文主要是介绍不需要高深技术,只需要Python:创建一个可定制的HTTP服务器!,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录

1、编写服务端代码,命名为httpserver.py文件。

2、编写网页html+css文件,命名为index.html和style.css文件。

3、复制html+css到服务端py文件同一文件夹下。

4、运行服务端程序。

5、浏览器中输入localhost:8080显示如下:


要编写一个简单的能发布网页的 Python 应用服务器,可以使用 Python 自带的 http.server 模块来实现。http.server 模块是 Python 的标准库,可以用来快速搭建一个简单的 Web 服务器。

以下是一个简单的示例,演示如何使用 http.server 模块来实现一个能够发布网页的应用服务器:

步骤如下:

1、编写服务端代码,命名为httpserver.py文件。

import http.server
import socketserverPORT = 8080Handler = http.server.SimpleHTTPRequestHandlerwith socketserver.TCPServer(("", PORT), Handler) as httpd:print(f"Serving at port {PORT}")httpd.serve_forever()

这个应用服务器将会在本地的 8080 端口监听来自客户端的 HTTP 请求,并将当前目录下的网页文件(如 HTML、CSS、JS 等)发布给客户端。

要使用这个应用服务器,只需要将网页文件放在当前目录下,然后在终端中运行上述 Python 脚本即可。在浏览器中访问 http://localhost:8080 即可访问网页。

2、编写网页html+css文件,命名为index.html和style.css文件。

index.html:

<!DOCTYPE html>
<html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><title>登录页面</title><link rel="stylesheet" type="text/css" href="style.css"></head><body><div class="container"><form><h2>欢迎登录</h2><label for="username"><b>用户名</b></label><input type="text" placeholder="请输入用户名" name="username" required><label for="password"><b>密码</b></label><input type="password" placeholder="请输入密码" name="password" required><button type="submit">登录</button></form></div></body>
</html>

style.css:

body {background-color: #F8F8F8;font-family: Arial, sans-serif;
}.container {width: 400px;margin: 0 auto;margin-top: 50px;background-color: #FFFFFF;padding: 20px;border-radius: 10px;box-shadow: 0px 0px 10px #888888;
}form {display: flex;flex-direction: column;
}h2 {text-align: center;margin-bottom: 20px;
}label {font-size: 18px;margin-bottom: 10px;
}input[type="text"],
input[type="password"] {padding: 10px;margin-bottom: 20px;border: none;border-radius: 5px;box-shadow: 0px 0px 5px #888888;
}button[type="submit"] {background-color: #4CAF50;color: #FFFFFF;font-size: 16px;font-weight: bold;padding: 10px;margin-top: 20px;border: none;border-radius: 5px;cursor: pointer;
}button[type="submit"]:hover {background-color: #3E8E41;
}

3、复制html+css到服务端py文件同一文件夹下。

 

4、运行服务端程序。

 

5、浏览器中输入localhost:8080显示如下:

 程序达到预期目标。

这篇关于不需要高深技术,只需要Python:创建一个可定制的HTTP服务器!的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/768063

相关文章

服务器集群同步时间手记

1.时间服务器配置(必须root用户) (1)检查ntp是否安装 [root@node1 桌面]# rpm -qa|grep ntpntp-4.2.6p5-10.el6.centos.x86_64fontpackages-filesystem-1.41-1.1.el6.noarchntpdate-4.2.6p5-10.el6.centos.x86_64 (2)修改ntp配置文件 [r

关于数据埋点,你需要了解这些基本知识

产品汪每天都在和数据打交道,你知道数据来自哪里吗? 移动app端内的用户行为数据大多来自埋点,了解一些埋点知识,能和数据分析师、技术侃大山,参与到前期的数据采集,更重要是让最终的埋点数据能为我所用,否则可怜巴巴等上几个月是常有的事。   埋点类型 根据埋点方式,可以区分为: 手动埋点半自动埋点全自动埋点 秉承“任何事物都有两面性”的道理:自动程度高的,能解决通用统计,便于统一化管理,但个性化定

python: 多模块(.py)中全局变量的导入

文章目录 global关键字可变类型和不可变类型数据的内存地址单模块(单个py文件)的全局变量示例总结 多模块(多个py文件)的全局变量from x import x导入全局变量示例 import x导入全局变量示例 总结 global关键字 global 的作用范围是模块(.py)级别: 当你在一个模块(文件)中使用 global 声明变量时,这个变量只在该模块的全局命名空

【专题】2024飞行汽车技术全景报告合集PDF分享(附原数据表)

原文链接: https://tecdat.cn/?p=37628 6月16日,小鹏汇天旅航者X2在北京大兴国际机场临空经济区完成首飞,这也是小鹏汇天的产品在京津冀地区进行的首次飞行。小鹏汇天方面还表示,公司准备量产,并计划今年四季度开启预售小鹏汇天分体式飞行汽车,探索分体式飞行汽车城际通勤。阅读原文,获取专题报告合集全文,解锁文末271份飞行汽车相关行业研究报告。 据悉,业内人士对飞行汽车行业

【Python编程】Linux创建虚拟环境并配置与notebook相连接

1.创建 使用 venv 创建虚拟环境。例如,在当前目录下创建一个名为 myenv 的虚拟环境: python3 -m venv myenv 2.激活 激活虚拟环境使其成为当前终端会话的活动环境。运行: source myenv/bin/activate 3.与notebook连接 在虚拟环境中,使用 pip 安装 Jupyter 和 ipykernel: pip instal

【机器学习】高斯过程的基本概念和应用领域以及在python中的实例

引言 高斯过程(Gaussian Process,简称GP)是一种概率模型,用于描述一组随机变量的联合概率分布,其中任何一个有限维度的子集都具有高斯分布 文章目录 引言一、高斯过程1.1 基本定义1.1.1 随机过程1.1.2 高斯分布 1.2 高斯过程的特性1.2.1 联合高斯性1.2.2 均值函数1.2.3 协方差函数(或核函数) 1.3 核函数1.4 高斯过程回归(Gauss

在cscode中通过maven创建java项目

在cscode中创建java项目 可以通过博客完成maven的导入 建立maven项目 使用快捷键 Ctrl + Shift + P 建立一个 Maven 项目 1 Ctrl + Shift + P 打开输入框2 输入 "> java create"3 选择 maven4 选择 No Archetype5 输入 域名6 输入项目名称7 建立一个文件目录存放项目,文件名一般为项目名8 确定

业务中14个需要进行A/B测试的时刻[信息图]

在本指南中,我们将全面了解有关 A/B测试 的所有内容。 我们将介绍不同类型的A/B测试,如何有效地规划和启动测试,如何评估测试是否成功,您应该关注哪些指标,多年来我们发现的常见错误等等。 什么是A/B测试? A/B测试(有时称为“分割测试”)是一种实验类型,其中您创建两种或多种内容变体——如登录页面、电子邮件或广告——并将它们显示给不同的受众群体,以查看哪一种效果最好。 本质上,A/B测

金融业开源技术 术语

金融业开源技术  术语 1  范围 本文件界定了金融业开源技术的常用术语。 本文件适用于金融业中涉及开源技术的相关标准及规范性文件制定和信息沟通等活动。

【学习笔记】 陈强-机器学习-Python-Ch15 人工神经网络(1)sklearn

系列文章目录 监督学习:参数方法 【学习笔记】 陈强-机器学习-Python-Ch4 线性回归 【学习笔记】 陈强-机器学习-Python-Ch5 逻辑回归 【课后题练习】 陈强-机器学习-Python-Ch5 逻辑回归(SAheart.csv) 【学习笔记】 陈强-机器学习-Python-Ch6 多项逻辑回归 【学习笔记 及 课后题练习】 陈强-机器学习-Python-Ch7 判别分析 【学