前言
真的从零开始,非专业人士,业余玩玩。
🟠粗略了解计算机网络知识
以下全部来自百度百科,我只是挑重点放一起了。
什么是互联网?
互联网(internet,因特网),又称国际网络,指的是网络与网络之间所串连成的庞大网络,这些网络以一组通用的协议相连,形成逻辑上的单一巨大国际网络。
计算机网络是指将地理位置不同的具有独立功能的多台计算机及其外部设备,通过通信线路和通信设备连接起来,在网络操作系统,网络管理软件及网络通信协议的管理和协调下,实现资源共享和信息传递的计算机系统。
IP是什么?IP协议是什么?IPv4和IPv6又是什么?
IP协议
- 是为计算机网络相互连接进行通信而设计的协议。在因特网中,它是能使连接到网上的所有计算机网络实现相互通信的一套规则,规定了计算机在因特网上进行通信时应当遵守的规则。任何厂家生产的计算机系统,只要遵守IP协议就可以与因特网互连互通。
- 各个厂家生产的网络系统和设备,如以太网、分组交换网等,它们相互之间不能互通,不能互通的主要原因是因为它们所传送数据的基本单元(技术上称之为“帧”)的格式不同。IP协议实际上是一套由软件程序组成的协议软件,它把各种不同“帧”统一转换成“IP数据报”格式,这种转换是因特网的一个最重要的特点,使所有各种计算机都能在因特网上实现互通,即具有“开放性”的特点。正是因为有了IP协议,因特网才得以迅速发展成为世界上最大的、开放的计算机通信网络。因此,IP协议也可以叫做“因特网协议”。
IP地址:
- IP协议中还有一个非常重要的内容,那就是给因特网上的每台计算机和其它设备都规定了一个唯一的地址,叫做“IP地址”。由于有这种唯一的地址,才保证了用户在连网的计算机上操作时,能够高效而且方便地从千千万万台计算机中选出自己所需的对象来。
- IP地址就像是我们的家庭住址一样,如果你要写信给一个人,你就要知道他(她)的地址,这样邮递员才能把信送到。计算机发送信息就好比是邮递员,它必须知道唯一的“家庭地址”才能不至于把信送错人家。只不过我们的地址是用文字来表示的,计算机的地址用二进制数字表示。IP地址被用来给Internet上的电脑一个编号。大家日常见到的情况是每台联网的PC上都需要有IP地址,才能正常通信。我们可以把“个人计算机”比作“一台电话”,那么“IP地址”就相当于“电话号码”,而Internet中的路由器,就相当于电信局的“程控式交换机”。
- IP地址是一个32位的二进制数,通常被分割为4个“8位二进制数”(也就是4个字节)。IP地址通常用“点分十进制”表示成(a.b.c.d)的形式,其中,a,b,c,d都是0~255之间的十进制整数。例:点分十进IP地址(100.4.5.6),实际上是32位二进制数(01100100.00000100.00000101.00000110)。
IPv6:
- 首先出现的IP地址是IPV4,它只有4段数字,每一段最大不超过255。由于互联网的蓬勃发展,IP位址的需求量愈来愈大,使得IP位址的发放愈趋严格,各项资料显示全球IPv4位址可能在2005至2010年间全部发完(实际情况是在2019年11月25日IPv4位地址分配完毕)。地址空间的不足必将妨碍互联网的进一步发展。为了扩大地址空间,拟通过IPv6重新定义地址空间。IPv6采用128位地址长度。在IPv6的设计过程中除了一劳永逸地解决了地址短缺问题以外,还考虑了在IPv4中解决不好的其它问题。
- 现有的互联网是在IPv4协议的基础上运行的。IPv6是下一版本的互联网协议,也可以说是下一代互联网的协议,它的提出最初是因为随着互联网的迅速发展,IPv4定义的有限地址空间将被耗尽,而地址空间的不足必将妨碍互联网的进一步发展。为了扩大地址空间,拟通过IPv6以重新定义地址空间。IPv4采用32位地址长度,只有大约43亿个地址,估计在2005~2010年间将被分配完毕,而IPv6采用128位地址长度,几乎可以不受限制地提供地址。按保守方法估算IPv6实际可分配的地址,整个地球的每平方米面积上仍可分配1000多个地址。在IPv6的设计过程中除解决了地址短缺问题以外,还考虑了在IPv4中解决不好的其它一些问题,主要有端到端IP连接、服务质量(QoS)、安全性、多播、移动性、即插即用等。
- 随着互联网的飞速发展和互联网用户对服务水平要求的不断提高,IPv6在全球将会越来越受到重视。实际上,并不急于推广IPv6,只需在现有的IPv4基础上将32位扩展8位到40位,即可解决IPv4地址不够的问题。这样一来可用地址数就扩大了256倍。
域名是什么?公网IP是什么?
域名:
- 由于IP地址不方便记忆并且不能显示地址组织的名称和性质,人们设计出了域名,并通过域名系统(DNS,Domain Name System)来将域名和IP地址相互映射,使人更方便地访问互联网,而不用去记住能够被机器直接读取的IP地址数串。
- 尽管IP地址能够唯一地标记网络上的计算机,但IP地址是一长串数字,不直观,而且用户记忆十分不方便,于是人们又发明了另一套字符型的地址方案,即所谓的域名地址。
- IP地址和域名是一 一对应的,这份域名地址的信息存放在一个叫域名服务器(Domain name server)的主机内,使用者只需了解易记的域名地址,其对应转换工作就留给了域名服务器。域名服务器就是提供IP地址和域名之间的转换服务的服务器。
- 域名解析服务务,最早于1983年由保罗·莫卡派乔斯发明,原始的技术规范在882号因特网标准草案(RFC 882)中发布,网域名称系统(DNS,Domain Name System,有时也简称为域名系统)是因特网的一项核心服务。例如,www.wikipedia.org是一个域名,和IP地址208.80.152.2相对应。域名系统就像是一个自动的电话号码簿,可以直接拨打维基百科的名字来代替电话号码(IP地址)。直接调用网站的名字以后,域名系统就会将便于人类使用的名字(如www.wikipedia.org)转化成便于机器识别的IP地址(如208.80.152.2)。
- 顶级域名&子域名
- 顶级域名(一级域名或父域名)是".com"、".net"、".org"、".cn"等等。二级域名是指顶级域名之下的域名,在国际顶级域名下,它是指域名注册人的网上名称,例如 ".ibm",".yahoo",".microsoft"等。 三级域名三级域名用字母(a~z)、数字(0~9)和连接符(-)组成, 各级域名之间用实点(.)连接,三级域名的长度不能超过20个字符。
- 这是基于13个全球范围的“根域名服务器”,其维护组织除了当中的3个以外,其他都位于美国。从这13个根服务器开始,余下的Internet DNS命名空间被委托给其他的域名服务器, 这些服务器提供DNS名称空间中的特定部分。
- 域名注册(也就是购买我们专属的域名)
广域网IP(公网IP)
- 是指以公网连接Internet上的非保留地址。广域网、局域网是两种Internet的接入方式,广域网的计算机和Internet上的其他计算机可随意互相访问。
- NAT(Network Address Translation)是网络地址转换,它实现局域网的IP地址与广域网的地址之间的相互转换,将广域网IP地址转换为大量的局域网IP地址,减少对公网IP地址的占用。
- NAT的最典型应用是:在一个局域网内,只需要一台计算机连接上Internet,就可以利用NAT共享Internet连接,使局域网内其他计算机也可以上网。使用NAT协议,局域网内的计算机可以访问Internet上的计算机,但Internet上的计算机无法访问局域网内的计算机。
- (用邮寄系统作比喻。有公网ip,相当于说你有一个详细的地址,你可以写信寄给别人,别人也可以用这个地址和你进行各种通讯。来看看没有公网ip是一种什么局面。这就像是住在一个大院里 ,所有进出邮件都由传达室转交。如果是普通的邮件,可以放在传达室,传达室的大爷大妈看到你了就会转交给你,或者你自己去传达室看看,这不重要,反正虽然经过了一点波折,还是可以看到邮件的。假设以下如果来了个挂号,邮局的人员说:必须本人签收。传达室的大爷就说了:对不起,所有的邮件都要经过我中转~。于是邮局的人员只好把信带回去了……实际情况和这个差不多,所谓没有公网ip,就是说你的机子并非直接连接上internet,而是所有通讯经过一台代理(一般是透明网关)进行中转,这时候问题就来了,就会有一些通讯无法在这种机制下顺利进行。比如两个网吧之间,网吧的机子是没有公网 ip的典型例子,通常两个网吧之间通过QQ传送文件就不是直接两台机器建立连接传输的,而是通过QQ的公网服务器进行中转传输了。又比如没有公网ip,上网玩对战游戏通常会有问题,你建立的游戏别人无法加入等等,当然通过服务提供商的公网服务器中转还是可以达成两个没有公网IP的机器进行交流的。)
公网IP_百度百科域名_百度百科子域名_百度百科逻辑地址_百度百科MAC地址_百度百科计算机网络(连接分散计算机设备及通信设备以实现信息传递的系统)_百度百科互联网(国际网络)_百度百科IP地址_百度百科
网站是什么?
网站(Website)
- 是指在因特网上根据一定的规则,使用HTML(标准通用标记语言)等工具制作的用于展示特定内容相关网页的集合。简单地说,网站是一种沟通工具,人们可以通过网站来发布自己想要公开的资讯,或者利用网站来提供相关的网络服务。人们可以通过网页浏览器来访问网站,获取自己需要的资讯或者享受网络服务。
- 网站是在互联网上拥有域名或地址并提供一定网络服务的主机,是存储文件的空间,以服务器为载体。人们可通过浏览器等进行访问、查找文件,也可通过远程文件传输(FTP)方式上传、下载网站文件。
- 网站组成
- 域名(Domain Name),是由一串用点分隔的字母组成的Internet上某一台计算机或计算机组的名称。用于在数据传输时标识计算机的电子方位(有时也指地理位置),域名已经成为互联网的品牌、网上商标保护必备的产品之一。
- 空间 常见网站空间:虚拟主机,虚拟空间,独立服务器,云主机,VPS。虚拟主机是在网络服务器上划分出一定的磁盘空间供用户放置站点、应用组件等;提供必要的站点功能、数据存放和传输功能。所谓虚拟主机,也叫“网站空间”,就是把一台运行在互联网上的服务器划分成多个“虚拟”的服务器。每一个虚拟主机都具有独立的域名和完整的Internet服务器(支持WWW、FTP、E-mail等)功能。虚拟主机是网络发展的福音,极大的促进了网络技术的应用和普及。同时虚拟主机的租用服务也成了网络时代新的经济形式。虚拟主机的租用类似于房屋租用。VPS即指虚拟专用服务器,是将一个服务器分区成多个虚拟独立专享服务器的技术。每个使用VPS技术的虚拟独立服务器拥有各自独立的公网IP地址、操作系统、硬盘空间、内存空间、CPU资源等,还可以进行安装程序、重启服务器等操作,与运行一台独立服务器完全相同。
- 代码 程序即建设与修改网站所使用的编程语言,换成源代码就是一堆按一定格式书写的文字和符号。浏览器就好像程序的编译器,它会帮把源代码翻译成看到的模样。
- 网站组成
http?https?反向代理?
超文本传输协议(Hypertext Transfer Protocol,HTTP) 是一个简单的请求-响应协议,它通常运行在TCP之上。它指定了客户端可能发送给服务器什么样的消息以及得到什么样的响应。请求和响应消息的头以ASCII形式给出;而消息内容则具有一个类似MIME的格式。超文本传输协议是一种用于分布式、协作式和超媒体信息系统的应用层协议,是万维网WWW(World Wide Web)的数据通信的基础。
HTTPS (全称:Hypertext Transfer Protocol Secure ),是以安全为目标的 HTTP 通道,在HTTP的基础上通过传输加密和身份认证保证了传输过程的安全性。HTTPS 在HTTP 的基础下加入SSL,HTTPS 的安全基础是 SSL,因此加密的详细内容就需要 SSL。 HTTPS 存在不同于 HTTP 的默认端口及一个加密/身份验证层(在 HTTP与 TCP 之间)。这个系统提供了身份验证与加密通讯方法。它被广泛用于万维网上安全敏感的通讯,例如交易支付等方面。HTTPS不是协议,而是通过SSL/TLS协议提供的安全连接进行的HTTP通信。最初,它被用于安全很重要的通信,例如在互联网上传输个人信息和电子支付。 随后,由于公共无线局域网的普及、PRISM的大规模窃听以及中间人攻击的风险增加, 用HTTPS取代单纯的HTTP通信越来越多。与以纯文本形式发送和接收消息的标准 HTTP 不同,HTTPS 使用SSL/TLS等协议对服务器进行身份验证、加密通信内容和检测篡改。 这样可以防止欺骗、中间人攻击和窃听等攻击。 HTTPS 使用 443 作为已知端口号
反向代理服务器位于用户与目标服务器之间,但是对于用户而言,反向代理服务器就相当于目标服务器,即用户直接访问反向代理服务器就可以获得目标服务器的资源。同时,用户不需要知道目标服务器的地址,也无须在用户端作任何设定。反向代理服务器通常可用来作为Web加速,即使用反向代理作为Web服务器的前置机来降低网络和服务器的负载,提高访问效率。
Nginx (engine x) 是一个高性能的HTTP和反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务。
静态、伪静态、动态你可以从以下链接了解
🟠着手搭建博客网站的第一步
了解完计算机网络的相关知识,那就能理解以下名词域名、虚拟专用服务器、域名解析、广域网IP(Ipv4、ipv6)、网站源码、一款ssh远程连接软件
先准备一下这些东西,准备东西的阶段我就粗略带过
注册:域名
(这没有图文的话就是我懒得写)
先去注册一个域名(去花钱买):提供域名注册的企业有很多,国内的有阿里云、腾讯云等等。国外的有namesilo。国外的那一个网址我放这了,因为真的有很多人用,至于国内的百度就能搜到官网:https://www.namesilo.com/
(具体怎么买,去哪买好,有什么注意事项,请百度)购买例:
- https://www.aliyun.com/
- 打开阿里云官方,在官网搜索栏中搜索:域名注册
- 来到域名注册页面,在域名搜索框里输入自己想要的二级域名,在下拉选框中选择自己想要的顶级域名。
- 选好之后,点击购买,进入购买流程,
- 需要注意的是国内购买域名是要实名认证的,所以,阿里云会引导你填写人物信息模版(以及进入实名审核认证流程)。
- 你可以在填写人物信息模版后下单购买。
- 但在购买之后,记得实名认证审核,需要身份证照片,做完这一步你的域名才能正常使用。
购买:虚拟专用服务器
(这没有图文的话就是我懒得写)
去买一个云服务器:提供云服务器的企业有,国内阿里云、腾讯云等等。国外的有亚马逊云、谷歌云、微软云。购买成功后。厂商会给你提供的东西有,ipv4地址,密码,ssh端口,用户名
购买:
- https://aws.amazon.com/
- 上面是国外的出售服务器的厂商——亚马逊云,它是有中文的,重要的是它提供1年的免费试用时间。(你可以白嫖它的服务,但你得有一张全币种信用卡如我使用的招商visa信用卡)
- 如果你没有全币种信用卡,那可以继续用阿里云
- 阿里云也是有免费试用的,而且它还有个99元一年的套餐,很实惠。
做好:域名解析
(这没有图文的话就是我懒得写)
买云服务器的时候,厂商会给你的云服务器一个广域网的ipv4和ipv6地址,当然也有例外:有的时候只有ipv6,不过我现在还没遇到过。你要将你的ipv4地址和你买的域名建立映射关系,将他们绑定起来。国内的阿里云、腾讯云提供这类服务,这类服务一般都是免费的。
当然你也可以将域名托管到 https://dash.cloudflare.com/ 这里不多讲,你可以自行去找教程,挺简单的,弄清楚以下几个问题就行。域名如何解析?域名如何托管到 cloudflare 上?为什么要托管到 cloudflare ?托管到 cloudflare 之后如何解析?
域名解析补充
一般我会在cloudflare上进行域名解析所以要在购买域名的网站上更改名称服务器(在域名解析网站获取:如cloudflare),如下图
然后我会把namesilo的解析记录删除
在 cloudflare 上新建域名解析记录 加入域
添加域名解析记录(下图有名称服务器,在namesilo配置)
控制:云服务器
(这没有图文的话就是我懒得写)
首先需要有帮助远程连接的软件,我用的是finalshell,下面是它的下载链接。https://www.hostbuf.com/
用 finalshell 连接服务器
买到云服务器,厂商会给你提供的东西有,ipv4地址,密码,ssh端口,用户名,下图依次填入,有个点没标上就是端口,如果厂商没给你,默认22试试看
🟠docker + docker compose 下载
docker
官方脚本下载都是最新的
# 1. 下载并运行官方安装脚本
curl -fsSL https://get.docker.com -o get-docker.sh
# 2. 执行安装
sudo sh get-docker.sh
# 3. 将当前用户加入 docker 组(避免每次用 sudo)
sudo usermod -aG docker $USER
# 4. 重新登录终端 或 执行以下命令刷新权限
newgrp docker
# 5. 验证安装
docker --version
docker compose
最新的docker自带 docker compose命令
- 不同的是 自带的docker compose命令 没有
-这个横杠 - 插件版的有 一下是额外的插件版:
# 下载最新版
sudo curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
# 添加执行权限
sudo chmod +x /usr/local/bin/docker-compose
# 验证
docker-compose --version
🟠 使用 docker + docker compose 手动部署halo
需要改的只有版本号:我常用的是2.21版本 image: registry.fit2cloud.com/halo/halo:2.21
version: "3"
services:
halo:
image: registry.fit2cloud.com/halo/halo:2.20
restart: on-failure:3
depends_on:
halodb:
condition: service_healthy
networks:
halo_network:
volumes:
- ./halo2:/root/.halo2
ports:
- "8090:8090"
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:8090/actuator/health/readiness"]
interval: 30s
timeout: 5s
retries: 5
start_period: 30s
environment:
# JVM 参数,默认为 -Xmx256m -Xms256m,可以根据实际情况做调整,置空表示不添加 JVM 参数
- JVM_OPTS=-Xmx256m -Xms256m
command:
- --spring.r2dbc.url=r2dbc:pool:mysql://halodb:3306/halo
- --spring.r2dbc.username=root
# MySQL 的密码,请保证与下方 MYSQL_ROOT_PASSWORD 的变量值一致。
- --spring.r2dbc.password=o#DwN&JSa56
- --spring.sql.init.platform=mysql
# 外部访问地址,请根据实际需要修改
- --halo.external-url=http://localhost:8090/
halodb:
image: mysql:8.1.0
restart: on-failure:3
networks:
halo_network:
command:
- --default-authentication-plugin=caching_sha2_password
- --character-set-server=utf8mb4
- --collation-server=utf8mb4_general_ci
- --explicit_defaults_for_timestamp=true
volumes:
- ./mysql:/var/lib/mysql
- ./mysqlBackup:/data/mysqlBackup
healthcheck:
test: ["CMD", "mysqladmin", "ping", "-h", "127.0.0.1", "--silent"]
interval: 3s
retries: 5
start_period: 30s
environment:
# 请修改此密码,并对应修改上方 Halo 服务的 SPRING_R2DBC_PASSWORD 变量值
- MYSQL_ROOT_PASSWORD=o#DwN&JSa56
- MYSQL_DATABASE=halo
networks:
halo_network:
ufw 防火墙命令
UFW 是标准 Ubuntu 20.04 安装过程中的一部分,它应该已经在系统上存在。如果因为某些原因,它没有被安装,可以通过输入下面的命令安装它:
sudo apt updatesudo apt install ufw
安装过程不会自动激活防火墙,以避免服务器被锁住。可以检查 UFW 的状态,输入:sudo ufw status verbose
- ufw命令行示例:ufw enable/disable:打开/关闭防火墙ufw reload:重启防火墙ufw status:查看已经定义的ufw规则ufw default allow/deny:外来访问默认允许/拒绝ufw allow/deny 20:允许/拒绝访问20端口,20后可跟/tcp或/udp,表示tcp或udp封包。sudo ufw allow proto tcp from 192.168.0.0/24 to any port 22:允许自192.168.0.0/24的tcp封包访问本机的22端口。ufw delete allow/deny 20:删除以前定义的"允许/拒绝访问20端口"的规则ufw打开或关闭某个端口,例如:sudo ufw allow 9200 允许外部访问9200端口(tcp/udp)sudo ufw allow 3690 允许外部访问3690端口(svn)sudo ufw allow from 192.168.25.125 允许此IP访问所有的本机端口sudo ufw allow proto tcp from 192.168.0.0/24 to any port 22 允许指定的IP段访问特定端口sudo ufw delete allow smtp 删除上面建立的某条规则,比如删除svn端口就是 sudo ufw delete allow 3690 ufw status:查看已经定义的ufw规则
🟠 部署Halo
安装Docker
先在宝塔面板环境中安装Docker,一般默认时候是没有安装的
Docker 部署Halo(宝塔)
写在前面,不建议用 Docker 部署,建议用 Docker compose 部署。当然无论如何你得安装Docker
在【镜像管理】中,需要把Halo镜像拉过来
- 下图中是官网的截图,有三个镜像源。任选一个
在第三部填入官方docker镜像仓库名称就默认,镜像名称填上图红框中的一个也可以填 ruibaby/halo
如果你通过上面方式成功了就可以不用做这一步往下第二小点看**你也可以用另外一种方式,拉取镜像 在控制台运行如下命令:docker run -it -d --name halo -p 8090:8090 -v ~/.halo:/root/.halo halohub/halo:latest或如下命令,任选一个就好docker run -d --name halo -p 8090:8090 -v ~/halo:/root/halo ruibaby/halo
- 这样你就可以看到如下图:容器和本地和本地镜像中多出了halo的镜像和容器,默认是正在运行的状态。这里我把它停止了

Docker compose 部署Halo(宝塔)
Docker 和 Docker compose下载
因为有一点点不同,就是在拉镜像的时候。所以这里也来个图例。值得一提的是如果用 Docker 默认使用的是 H2 数据库,官方不建议这么做......首先到halo官方文档,复制代码 如下图,我用的是 halo+mysql

拿到的代码如图要改的有两个地方,代码里也有注释
version: "3"
services:
halo:
image: registry.fit2cloud.com/halo/halo:2.20
restart: on-failure:3
depends_on:
halodb:
condition: service_healthy
networks:
halo_network:
volumes:
- ./halo2:/root/.halo2
ports:
- "8090:8090"
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:8090/actuator/health/readiness"]
interval: 30s
timeout: 5s
retries: 5
start_period: 30s
environment:
# JVM 参数,默认为 -Xmx256m -Xms256m,可以根据实际情况做调整,置空表示不添加 JVM 参数
- JVM_OPTS=-Xmx256m -Xms256m
command:
- --spring.r2dbc.url=r2dbc:pool:mysql://halodb:3306/halo
- --spring.r2dbc.username=root
# MySQL 的密码,请保证与下方 MYSQL_ROOT_PASSWORD 的变量值一致。
- --spring.r2dbc.password=o#DwN&JSa56
- --spring.sql.init.platform=mysql
# 外部访问地址,请根据实际需要修改
- --halo.external-url=http://localhost:8090/
halodb:
image: mysql:8.1.0
restart: on-failure:3
networks:
halo_network:
command:
- --default-authentication-plugin=caching_sha2_password
- --character-set-server=utf8mb4
- --collation-server=utf8mb4_general_ci
- --explicit_defaults_for_timestamp=true
volumes:
- ./mysql:/var/lib/mysql
- ./mysqlBackup:/data/mysqlBackup
healthcheck:
test: ["CMD", "mysqladmin", "ping", "-h", "127.0.0.1", "--silent"]
interval: 3s
retries: 5
start_period: 30s
environment:
# 请修改此密码,并对应修改上方 Halo 服务的 SPRING_R2DBC_PASSWORD 变量值
- MYSQL_ROOT_PASSWORD=o#DwN&JSa56
- MYSQL_DATABASE=halo
networks:
halo_network:
复制好代码,到宝塔配置
复制好代码在以下地方配置,粘贴到第五步的框框里。第四步随意取个英文名就可以确定了,对了别忘了改代码里的两个地方,MYSQL_ROOT_PASSWORD=o#DwN&JSa56--spring.r2dbc.password=o#DwN&JSa56``o#DwN&JSa56 把数据库的密码改了,两个地方需要一样的密码做完这步,后面就的 访问halo站点,跟随引导,初始化站点
访问halo站点,跟随引导,初始化站点
在地址栏输入以下形式的地址,{ip}这个替换为你的服务器ip,端口号默认是8090,例如:http://12.172.33.22:8090 http://{ip}:端口号注意:如果需要配置域名访问,建议先配置好反向代理以及域名解析再进行初始化。方法如下,不过这一步也可以暂时搁置,先进行下一步,你能利用上述方式访问了在回来配置也不迟,我就是这样做的。域名解析:下图是cloudflare的域名解析截图仅供参考,实在不会整,可以上网搜索方法
反向代理:按照下图步骤即可完成反向代理操作,在第五步填入你的地址,例如:http://12.172.33.22:8090,第六步保持如图
到这里,我们申请一下ssl证书,有种情况就是,提示访问不安全,进入网页需要提示你后再让你点击继续访问才能进去
如果你了解http和https,就知道,我们是没有配置ssl证书,以http形式进行访问的,所以我们要配置一下ssl证书,宝塔方法如图,步骤在第六点须是你已经添加了域名访问,然后打勾全部就好
本机、宝塔、厂商后台,放行端口!
通常情况下做完上面的步骤还是无法访问的如果通过 http://ip:端口号 的形式无法访问,请到服务器厂商后台将运行的端口号添加到安全组,如果服务器使用了 Linux 面板,请检查此 Linux 面板是否有还有安全组配置,需要同样将端口号添加到安全组。简单说 你需要配置本机防火墙放行8090端口,当然,你还要在宝塔的安全里放行8090端口如果你购买的服务器厂商会有后台的安全组配置,如亚马逊云,你还要到安全组配置放行8090端口下图-宝塔的安全里放行8090端口
下图-配置本机防火墙放行8090端口,在控制台输入ufw allow命令,
下图-厂商后台安全组配置放行8090端口
初始化 配置 halo 站点
根据halo版本不同初始化页面也略有不同,按引导填进去就好重要的是,把你在这个页面填进去的东西都记住了
访问自己的博客站
以上配置完成你就可以通过以下形式访问你的站点了。http://12.172.33.2:8090或者是以下域名形式的:yyds.com你能进入网站的主页后,那。。恭喜你!
使用宝塔面板搭建个人网站(博客)超详细2023_宝塔面板搭建网站-CSDN博客【Docker 模块】使用手册 - Linux面板 - 宝塔面板论坛【Docker 模块】使用 Compose 搭建自己的 Nextcloud 私人网盘 - Linux面板 - 宝塔面板论坛
评论区