侧边栏壁纸
  • 累计撰写 98 篇文章
  • 累计创建 85 个标签
  • 累计收到 9 条评论

如何搭建自己的博客网站

bearjun
2022-03-13 / 0 评论 / 0 点赞 / 432 阅读 / 4,182 字 / 正在检测是否收录...
温馨提示:
本文最后更新于 2022-04-11,若内容或图片失效,请留言反馈。部分素材来自网络,若不小心影响到您的利益,请联系我们删除。

本文讲述我从0到搭建 https://bearjun.com 的全部过程。让小伙伴们知道搭建一个网站的大概流程。

  • 选择合适的域名
  • 域名备案
  • 网站程序编写(找优秀的开源项目)
  • 购买服务器
  • 开始搭建
  • 域名解析,相关配置
  • 愉快的访问

注意:这个只是大概的流程,如果你选择的服务器为海外服务器,则不用备案。总之这个仅仅作为参考,以实际为主。

选择合适的域名

我们搭建的网站不能总是通过ip来进行访问吧,首先我们得选择一款合适的域名。

常见的域名有.com.cn.xyz.cc ...... 选择自己喜欢的即可。需要注意的是:有些域名不能再国内备案。

可以通过 https://dnspod.cloud.tencent.com/ 来进行选择购入。

image.png
image.png

选择自己喜欢的域名进行购买即可。之后到后台管理系统中>域名注册>我的域名>实名认证。

image.png

域名备案

域名注册完是不能进行访问的,再国内的用户需要备案才能访问。备案时间有点长,一般两周左右。在这个期间,你可以购买服务器或者自己写代码更或者你可以开源的博客网站。先做配置,等网站备案好直接解析到域名。

微信搜索腾讯云备案小程序,然后新增,一直下一步。需要说明的一点是:这个地方你必须要服务器或者备案码

image.png

服务器:就是我们购买的服务器,不管是腾讯云或者阿里云都可以。但是最好选择同一家购买,方便一些。
备案码:拥有云服务器的人可以生成备案码,你可以去淘宝购买一个。
特别说明:如果你想用购买的备案码先备案,然后做一些违法的内容,卖你备案码的人是要负责的。

之后就是填写网站名称,网站性质,已经办网站的一些说明。这个地方随便写,就算你后期的网站不叫这个名字也是可以的。
再然后就是上传自己的身份证和视频信息,然后等待两周就好了。

这里有个细节需要说一下,备案的时候要时刻保持着手机的畅通,工作人员回电话联系你,询问基本的情况,如实回答即可。需要特别注意的是,提交到工信部的时候,你手机会收到一条短信,及得24H按照短信内容去核验。

网站程序编写(找优秀的开源项目)

这部分因人而异吧,有些人搭建博客网站没还有些人搭建视频网站甚至有些人搭建表白网站,都是有的。咳咳,我曾经就搭建过表白网站。哈哈哈哈哈。
这边推荐几款优秀的开源博客网站:

  • Wordpress。基于php开发,搭建简单,主题多,种类多。应用广泛。
  • Typora。基于php开发,搭建简单,主题多。
  • Halo。基于java开发。搭建简单,主体种类类。

以上看个人吧,选择自己喜欢合适的就好。本站就是基于Halo搭建的。

购买服务器

这部分怎么说呢?没到618或者双11,各个服务器厂商都有对应的活动。按照活动选择适合自己的就好。

image.png

以腾讯云为例,选择首页的最新活动。一般进入都会有活动,没活动也给整出活动来。
image.png
image.png

可以选择首单优惠或者是产品首单优惠,一般建议直接股买三年(土豪随意啊)。建议选择轻量云,价格便宜,操作便捷。
image.png
之后可以去后台找到轻量应用服务器>然后找到购买的轻量云服务器。

这里需要注意的是:选择系统的时候,可以选择windows、linux、ubuntu以及定制合作的系统。尽量选择适合自己的。

开始搭建

购买完轻量云之后记得修改服务器的远程连接密码。进入到服务器刚才购买的服务器,重置即可。
image.png

我这里选择的是Linux的CentOS 8.0 64bit的操作系统。首先登录xhsell。然后命令操作。

以下我会做详细的说明:

开放对应的端口号

在腾讯云控制台 > 轻量应用服务器 > 找到自己的云服务器 > 点击进入 > 防火墙 > 依次添加放开的端口88883306等端口。
image.png

8888: 宝塔面板的端口
3306: 数据库的端口
当然,如果你需要开放更多端口,你可以依次添加,不然应用访问不到。不建议关闭防火墙或者是放开全部端口,这样很不安全。

安装宝塔面板

喜欢可视化的可以安装宝塔面板,如果你感觉你不需要,你也可以不用安装。

yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh

以上的命令仅仅针对linux的操作系统,如果需要其他操作系统 宝塔官网

然后就是等待安装完成

........
外网面板地址: http://ip:8888/8e765451
内网面板地址: http://ip:8888/8e765451
以下仅为初始默认账户密码,若无法登录请执行bt命令重置账户/密码登录
username: username
password: password
If you cannot access the panel,
release the following panel port [8888] in the security group
若无法访问面板,请检查防火墙/安全组是否有放行面板[8888]端口
.........

等待看到如上文字的时候,代表宝塔面板已经安装完成,然后复制上面的外网面板地址usernamepassword进行登录进入宝塔。

image.png

进去之后,我们只需要安装需要的软件,NginxMySQLPhP等常用的软件,可以安装上图的搜索进行搜索安装。

等待安装好了,就可以创建数据库了:
image.png

安装docker

docker初级篇 - docker基本命令使用

当然,如果你不会安装,你也可以不安装。docker只是为了简化我们的操作,并不是必要的。

安装程序

安装docker后,请参考这篇文章:docker安装后安装响应的Halo程序
如果没有安装,请参考这篇文章:在 Linux 环境部署
一下就docker安装做一些说明:

# 1、创建数据存储的位置(你可以选择别的目录,这个是~目录下.halo)
mkdir ~/.halo && cd ~/.halo

# 2、下载配置文件,写过java项目的小伙伴应该很熟悉
wget https://dl.halo.run/config/application-template.yaml -O ./application.yaml

# 3、修改配置文件,Halo默认的是H2数据库,我们当然以MySQL为例啊
vim application.yaml

# 我们注释掉H2相关的内容,放开MySQL的注释,然后修改自己的数据库信息
spring:
  datasource: 
    driver-class-name: com.mysql.cj.jdbc.Driver
    url: jdbc:mysql://127.0.0.1:3306/halodb?characterEncoding=utf8&useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true
    username: root
    password: 123456

# halodb = 数据库名称
# root = 用户名
# password = 密码

# 4、拉取最新的 Halo 镜像
docker pull halohub/halo:1.4.17

# 5、运行docker容器
docker run -it -d --name halo -p 8090:8090 -v ~/.halo:/root/.halo --restart=unless-stopped halohub/halo:1.4.17

# 说明一下:
-it -d :后台运行
--name: 为容器指定一个名称
p: 端口映射,格式为 主机(宿主)端口:容器端口 ,可在 application.yaml 配置。
-v: 工作目录映射。形式为:-v 宿主机路径:/root/.halo(就是我们上面创建存放数据的地方),后者不能修改。

# 6、访问
打开IP:port愉快的访问,这里可能打不开,记得放开对应的端口。

可能需要注意的就是:配置自己的数据库和端口相关的问题。 以上是需要动手能力的,如遇到一些问题,小伙伴们可以评论区一起讨论。

安装主题,做博客相关的配置

我们安装好后,发现Halo原生的主题并不是很好看,我们可以 IP:port/admin 进去后台,输入刚才设置的用户名密码登陆。选择主题 > 安装。

image.png
image.png

Halo主题仓库,这里面有很多主题,选择喜欢的主题对应安装即可。

域名解析,相关配置

如果域名备案好了,这个时候,我们就要域名解析了。

域名解析,说简单点,就是把域名解析到应对的ip或者地址上,然后通过域名来访问。

image.png
最简单的,直接通过上图的快速解析,添加自己的云服务器地址即可完成解析。
主机记录简单说明一下:

  • @ :代表的是一级顶级域名。直接解析到域名。例如:bearjun.com
  • www : 代表的是二级顶级域名,解析到www + 域名。例如:www.bearjun.com
  • 任意文字: 代表的是二级顶级域名,解析到xxx + 域名。xxx.bearjun.com

快速解析可以直接解析到带www的和不带wwww的。换句话说,就是带不带www,都可以访问到域名。

之后就是nginx的反向代理过程:

upstream halo {
    server 127.0.0.1:8090;
}
server
{
    ...
    
    location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
    {
        proxy_pass http://halo;
        expires      30d;
        error_log /dev/null;
        access_log off;
    }
    
    location ~ .*\.(js|css)?$
    {
        proxy_pass http://halo;
        expires      12h;
        error_log /dev/null;
        access_log off; 
    }
    
    location / {
        proxy_pass http://halo;
        proxy_set_header HOST $host;
        proxy_set_header X-Forwarded-Proto $scheme;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    }

    ...
}

注意上面的 upstream 中 server 的端口,如果是80,可以不用配置nginx。

愉快的访问

等待域名的解析时间到达,一般5-10分钟的样子,就可以通过域名愉快的访问了。

以上就是本站搭建的大致步骤,如果有啥不清楚的地方,下方留言一起讨论。

0

评论区