如何优雅的搭建一个轻量化的网站

本地网页

这里我找到了一个带有简单的悬停变色效果的个人博客网站模板。用来演示这次的轻量化网站搭建。你可以复制这段代码到一个txt文件中,修改文件后缀名为html即可得到一个最简单的静态网页文件。在没有搭建网站服务器时,本机可以通过直接双击该文件跳转到浏览器查看页面效果。

<!DOCTYPE html>
<html lang="zh-CN">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>你的博客</title><style>body {font-family: 'Arial', sans-serif;margin: 0;padding: 0;background-color: #f4f4f4;}header {background-color: #333;color: #fff;text-align: center;padding: 1em;}main {max-width: 800px;margin: 20px auto;padding: 20px;background-color: #fff;box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);}section {margin-bottom: 20px;}footer {text-align: center;padding: 10px;background-color: #333;color: #fff;}.button {display: inline-block;padding: 10px 20px;background-color: #333;color: #fff;text-decoration: none;border-radius: 5px;transition: background-color 0.3s, color 0.3s;}.button:hover {background-color: #555;color: #fff; /* 可根据需要调整悬停时的文本颜色 */}h2:hover {color: #555;}article {border: 1px solid #ccc;padding: 10px;border-radius: 5px;transition: box-shadow 0.3s;}article:hover {box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);}</style>
</head>
<body><header><h1>你的博客</h1>
</header><main><section><h2>最新文章</h2><article><h3>文章标题</h3><p>文章内容在这里...</p><a href="#" class="button"></a></article><article><h3>另一篇文章标题</h3><p>文章内容在这里...</p><a href="#" class="button"></a></article></section><section><h2>关于我</h2><p>你的介绍和关于你的信息...</p></section>
</main><footer>&copy; 2024 你的博客 | 由你设计
</footer></body>
</html>

端口

端口是在明确了那一台计算机后,用来明确访问或者寻找相应程序的标识。外部的连接必须通过端口才能明确跟计算机中的哪个程序进行沟通。而我们为了能够访问刚刚创建好的网页文件,也需要指定一个端口,这里指定为8070端口。

如果没有指定端口号,只输入IP地址时,默认会访问80端口。

网页服务器

上述方法只是通过类似访问文件的方式打开了网页,只局限于本机通过文件资源管理器访问。对于一个最基本的网站来说,连一个网址都没有。这里涉及到一个计算机网络的小知识,本机(即自己的计算机)可以用127.0.01或者localhost来指代。结合上述的端口,我们可以得到一个IP地址为:localhost:8080。但是想要通过这个IP地址在浏览器中也能访问的话,我们至少需要一个服务器程序,来响应外部的网页请求。经过我的尝试,发现一个最为简单的方式,使用python的python -m http.server 8070命令。

在这里插入图片描述
运行效果如上图所示。可以使用localhost:8080来访问该服务器提供的网页服务,效果如下图所示。

在这里插入图片描述

内网穿透

经过上述步骤,我们暂时只能在本机环境访问该服务器,没法将网址发送给外部环境进行环境。在以前,我认为解决该问题必须购买域名才能解决。不过最近发现了一个更为方便的方法,即内网穿透。

NATAPP一分钟快速新手教程:https://natapp.cn/article/natapp_newbie

总结一下步骤:

  1. 登录注册
  2. 购买隧道,无需担心,前两个通道是免费的
  3. 购买后可以得到授权码
  4. 在配置文件中使用自己的授权码
#将本文件放置于natapp同级目录 程序将读取 [default] 段
#在命令行参数模式如 natapp -authtoken=xxx 等相同参数将会覆盖掉此配置
#命令行参数 -config= 可以指定任意config.ini文件
[default]
authtoken= 授权码                     #对应一条隧道的authtoken
clienttoken=                    #对应客户端的clienttoken,将会忽略authtoken,若无请留空,
log=none                        #log 日志文件,可指定本地文件, none=不做记录,stdout=直接屏幕输出 ,默认为none
loglevel=ERROR                  #日志等级 DEBUG, INFO, WARNING, ERROR 默认为 DEBUG
http_proxy=                     #代理设置 如 http://10.123.10.10:3128 非代理上网用户请务必留空
  1. 之后只需下载NATApp,并将配置文件放到同一目录下,双击exe文件即可将内网地址转换为外网地址。效果如下图所示:
    在这里插入图片描述
  2. 划圈部分就是外网地址,你可以发送给自己的朋友,给他们炫耀一下自己刚刚开发的小网站。

效果

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/606469.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

YOLOv5改进之---EIoU,SIoU,AlphaIoU,FocalEIoU,Wise-IoU

本文主要针对yolov5的iou损失函数进行改进,主要涵盖EIoU,SIoU,AlphaIoU,FocalEIoU,Wise-IoU这几种损失。 一、首先会对这几种损失进行介绍: 1、背景 由于EIOU是在CIOU的基础上改进的,为方便理解,此处贴出CIOU的计算公式,其他GIOU、DIOU不作介绍。 CIOU公式如下所示: b ,…

C++ 中的指针和引用有什么区别?

C 中的指针和引用有什么区别&#xff1f; 在开始前我有一些资料&#xff0c;是我根据网友给的问题精心整理了一份「C的资料从专业入门到高级教程」&#xff0c; 点个关注在评论区回复“888”之后私信回复“888”&#xff0c;全部无偿共享给大家&#xff01;&#xff01;&#…

alibabacloud学习笔记02(小滴课堂)

什么是注册中心和常见的注册中心有哪些 介绍什么是Nacos和搭建实战 启动Nacos 使用前要先安装jdk。 linux学习专栏笔记中有&#xff0c;大家可以去看。 关闭nacos: 这样我们就登录了nacos。 项目集成Nacos实现服务直接的调用 每个子模块都去添加。 给每个子模块配置nacos配…

C++力扣题目--94,144,145二叉树非递归(迭代)遍历

为什么可以用迭代法&#xff08;非递归的方式&#xff09;来实现二叉树的前后中序遍历呢&#xff1f; 我们在栈与队列&#xff1a;匹配问题都是栈的强项 (opens new window)中提到了&#xff0c;递归的实现就是&#xff1a;每一次递归调用都会把函数的局部变量、参数值和返回地…

【python】使用fitz包读取PDF文件报错“ModuleNotFoundError: No module named ‘frontend‘”

【python】使用fitz包读取PDF文件报错“ModuleNotFoundError: No module named ‘frontend’” 正确解决过程 在读取PDF文件时&#xff0c;我使用了fitz包&#xff0c;当使用代码import fitz导入该包时&#xff0c;出现了报错&#xff1a; 于是我直接使用以下代码安装fronten…

每天刷两道题——第十天

1.1和为k的子数组 给你一个整数数组 n u m s nums nums 和一个整数 k k k &#xff0c;请你统计并返回 该数组中和为 k k k 的子数组的个数 。子数组是数组中元素的连续非空序列。 输入&#xff1a;nums [1,2,3], k 3 输出&#xff1a;2 前缀和 1.2如何使用 前缀和的…

stable diffusion 人物高级提示词(五)场景、特效、拍摄手法、风格

一、场景 场景Promptindoor室内outdoor室外cityscape城市景色countryside乡村beach海滩forest森林mountain山脉snowfield雪原skyscraper摩天大楼ancient monument古代遗迹cathedral大教堂library图书馆museum博物馆office building办公大楼restaurant餐厅street market街头市场…

使用openssl 生成pfx格式证书时报错:unable to load certificates

问题现象包如下&#xff1a; 之前在centos上使用openssl部署证书服务器以及颁发证书的时候遇到的问题&#xff0c;在进行个人证书生成之后需要形成pfx格式证书&#xff0c;结果过程中报错了。网上类似资料比较少&#xff0c;做个记录。 生成pfx格式证书的命令&#xff1a; o…

7 种常见的前端安全攻击

文章目录 七种常见的前端攻击1.跨站脚本&#xff08;XSS&#xff09;2.依赖性风险3.跨站请求伪造&#xff08;CSRF&#xff09;4.点击劫持5.CDN篡改6. HTTPS 降级7.中间人攻击 随着 Web 应用程序对业务运营变得越来越重要&#xff0c;它们也成为更有吸引力的网络攻击目标。但不…

想要复制图片的文案要哪些方法呢

从图片中提取文字的需求越来越普遍。无论是从扫描文档、社交媒体截图还是广告海报中提取文字&#xff0c;都能够帮助我们快速获取信息并提高工作效率。为了满足这一需求&#xff0c;市面上涌现出了众多图片文字提取工具。本文将为你介绍一些实用的工具&#xff0c;帮助你快速完…

ENZO LIFE SCIENCE:MEGACD40L®蛋白

MEGACD40L是一种高活性蛋白&#xff0c;其中的两个三聚体CD40配体分子通过Adiponectin&#xff08;脂联素&#xff09;/ACRP30/AdipoQ的胶原结构域人工连接。该蛋白质非常有效地模拟了在体内自然条件下&#xff0c;CD40L的膜辅助聚集&#xff0c;为[CD40L增强剂]的组合&#xf…

RT-Thread 线程管理

线程管理 在日常生活中&#xff0c;我们要完成一个大任务&#xff0c;一般会将它分解成多个简单、容易解决的小问题&#xff0c;小问题逐个被解决&#xff0c;大问题也就随之解决了。 在多线程操作系统中&#xff0c;也同样需要开发人员把一个复杂的应用分解成多个小的、可调…

Android Canvas图层saveLayer剪切clipPath原图addCircle绘制对应圆形区域,Kotlin(2)

Android Canvas图层saveLayer剪切clipPath原图addCircle绘制对应圆形区域&#xff0c;Kotlin&#xff08;2&#xff09; 在 Android Canvas图层saveLayer剪切clipRect原图对应Rect区域&#xff0c;Kotlin&#xff08;1&#xff09;-CSDN博客 的基础上&#xff0c;把矩形切图&a…

3.9 EXERCISES

矩阵加法需要两个输入矩阵A和B&#xff0c;并产生一个输出矩阵C。输出矩阵C的每个元素都是输入矩阵A和B的相应元素的总和&#xff0c;即C[i][j] A[i][j] B[i][j]。为了简单起见&#xff0c;我们将只处理元素为单精度浮点数的平方矩阵。编写一个矩阵加法内核和主机stub函数&am…

强化学习的数学原理学习笔记 - RL基础知识

文章目录 Roadmap&#x1f7e1;基础概念贝尔曼方程&#xff08;Bellman Equation&#xff09;基本形式矩阵-向量形式迭代求解状态值 vs. 动作值 &#x1f7e1;贝尔曼最优方程&#xff08;Bellman Optimality Equation&#xff0c;BOE&#xff09;基本形式迭代求解 本系列文章介…

DSP2335的时钟PLL配置

PLL模块框图 xclkin是直接进来的外部时钟&#xff1b; 而下面的是振荡器&#xff08;晶振出来&#xff09;的时钟 PLLSTS 锁相环状态寄存器 PLLCR 锁相环控制寄存器 PLLSTS【oscoff】 决定着外部时钟的输入 PLLSTS【plloff】 锁相器关闭位 0使能PLL 锁相环控制寄存器…

Hive 的 安装与部署

目录 1 安装 MySql2 安装 Hive3 Hive 元数据配置到 MySql4 启动 Hive Hive 官网 1 安装 MySql 为什么需要安装 MySql? 原因在于Hive 默认使用的元数据库为 derby&#xff0c;开启 Hive 之后就会占用元数据库&#xff0c;且不与其他客户端共享数据&#xff0c;如果想多窗口操作…

【Java集合篇】HashMap 是如何扩容的

HashMap 是如何扩容的 ✔️ 为什么需要扩容?✔️ 桶元素重新映射✔️链表重新链接✔️ 取消树化✔️拓展知识仓✔️除了rehash之外&#xff0c;哪些操作也会将树会退化成链表? ✔️ 为什么需要扩容? HashMap在Java等编程语言中被广泛使用&#xff0c;用于存储键值对数据。Ha…

【QML COOK】- 001-添加资源文件

1. 下图为要添加的资源文件 2. 将资源文件放置在工程目录中 我放在【Resources/Images】下&#xff0c;你随意 3. 添加qrc类型文件 文件->New File... 选择 Qt->Qt Resource File 填好文件名。我填“Images”你随意 出现名为“Images.qrc”的qrc类型文件 4. 添加资源文…

Ansible:简单、快速、安全、最强大的 IT 自动化系统 | 开源日报 No.140

ansible/ansible Stars: 59.6k License: GPL-3.0 Ansible 是一个极其简单的 IT 自动化系统&#xff0c;它处理配置管理、应用部署、云提供、临时任务执行、网络自动化和多节点编排。Ansible 使得像零停机滚动更新与负载均衡器一样复杂的更改变得容易。主要功能包括&#xff1…