当前位置: 首页 > article >正文

从0开始学习搭网站第三天

  • 在前一天里,我们已经能够借助GitHub搭建一个自己的博客网站,当然在此基础上可以做更多优化,比如寻找自己更喜欢的模板布局,对网站的内容做进一步填充,买个域名作为网站网址等,今天就先把这些东西放一放

    目录

    • 将GitHub page域名更改为自己买的域名
    • 使用cloudflare加速
    • 如何设置一个本地测试服务器
    • 如何搭建crypto的动态环境

将GitHub page域名更改为自己买的域名

第一步:去GitHub添加这一域名在这里插入图片描述
第二步:ping username.github.io,看是ipv4地址还是ipv6地址,并且这个地址复制下来
第三步:前往购买域名的服务商,以阿里云为例,添加两条记录(如果是ipv4就添加A记录)
在这里插入图片描述

使用cloudflare加速

这个东西呢,就相当于免费的加速器,选择免费模式,同样添加两条记录,再根据引导修改DNS服务器为cloudflare的两个服务器

在这里插入图片描述在这里插入图片描述
在这里插入图片描述

如何设置一个本地测试服务器

当我们写好一个html文件,拖入浏览器中无法正常显示,原因是这样
在这里插入图片描述
简单地说,就是要把文件用服务器运行一下才能正常显示,如果我们不想写一个服务器怎么办呢,我用的是vscode的一个插件在这里插入图片描述

如何搭建crypto的动态环境

  • 一开始学习web的问题,也是得到了答案,我们所见到的crypto动态题目,大多都是用python语言编写,有处理请求和返回响应的功能,其实是因为出题人在服务器端运行了这段python代码,那么比赛一结束,没有了服务器,我们应该怎么复现呢,分两种情况考虑
  1. 脚本自己写了服务器端的代码(即接收响应和回答的一整个逻辑都写好了),运行即可,再新开一个脚本做题,用pwntools工具对服务器脚本给的地址进行连接
    在这里插入图片描述

  2. 脚本只有题目的逻辑,没有交互的逻辑
    解决方案呢有两种,第一种是如果你有租用的服务器,将文件上传到服务器运行即可,不过学密码的话应该不会有,所以我更推荐第二种,就是模仿上面的代码写一个交互的逻辑在这里插入图片描述
    我看大多数脚本都是用到socket库,可能是因为比较简单,如果你不想使用 Web 框架,也可以使用 Python 的 socket 库直接编写 TCP 或 UDP 服务器。

import socket

# 创建一个 TCP socket
server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)

# 绑定地址和端口
server_socket.bind(('localhost', 12345))

# 开始监听客户端连接
server_socket.listen(5)
print("Server is listening on port 12345...")

# 接受客户端连接
client_socket, client_address = server_socket.accept()
print(f"Connection established with {client_address}")

# 接收客户端发送的数据
data = client_socket.recv(1024)
print(f"Received data: {data.decode()}")

# 发送响应
client_socket.send(b'Hello from the server')

# 关闭连接
client_socket.close()
server_socket.close()

这段代码创建了一个 TCP 服务器,监听 localhost 的 12345 端口。

  • 服务器接受客户端的连接,接收数据并返回 “Hello from the server”。
  • 客户端连接断开后,服务器关闭连接并终止。
  • 其实到这里所有问题都解决了,不管是搭网站还是搭动态环境,暂时用GitHub搭的网站其实够了,不想再继续深入研究了,干脆直接去打打web题来学习,那么这个系列就到此结束了

http://www.kler.cn/a/505821.html

相关文章:

  • ros2笔记-6.2 使用urdf创建机器人模型
  • java根据模板导出word,并在word中插入echarts相关统计图片以及表格
  • 机器学习06-正则化
  • flutter 安卓端打包
  • 关于linux的ld.so.conf.d
  • ETL 数据抽取
  • 【k8s】用户和服务账户联系(user、serviceaccount、sa)
  • C++ inline的使用和含义详解
  • JavaScript系列(28)--模块化开发详解
  • ansible之playbook实战
  • OpenGL —— 基于Qt的视频播放器 - ffmpeg硬解码,QOpenGL渲染yuv420p或nv12视频(附源码)
  • 文章复现—面向配电网韧性提升的移动储能预布局与动态调度策略
  • Excel批量写sql
  • RPC实现原理,怎么跟调用本地一样
  • vue3使用vue-native-websocket-vue3通讯
  • 省级-农业科技创新(农业科技专利)数据(2010-2022年)-社科数据
  • 30分钟内搭建一个全能轻量级springboot 3.4 + 脚手架 <5> 5分钟集成好caffeine并使用注解操作缓存
  • 力扣 20. 有效的括号
  • Java Python:从简单案例理解 HTTP 服务开发与调用!
  • 算法15、双指针(归并排序两种做法)
  • 视频本地化的特点
  • 本地视频进度加入笔记+根据进度快速锁定视频位置
  • LeetCode 每日一题 2025/1/6-2025/1/12
  • [Qt] 窗口 | QDialog | 常用内置对话框
  • 数据仓库的复用性:设计和构建一个高复用性的数仓
  • 软考信安20~数据库系统安全