小白零成本搭建个人网站教程:从博客到自由实验空间的完整指南 外贸网站优化公司排名

写给新手和我以前的自己,他们想要拥有自己的网站但没有资金成本。

前言

虽然是网站,但对于个人来说,一般可以称为博客。

但我不希望它只是一个博客,而是一个脱离我自己的现实生活的地方,在那里我可以自由、实验、不怕别人的眼光,甚至可以随心所欲。

当然,这本质上是一个新手教程,可能感觉有点科普的感觉。

我会整体介绍一下网站建设的过程以及所使用的技术和步骤(因为我想展开,如果轶事太多,太复杂了,我就停止了),让你了解这个东西它在网站的发展中起到什么作用?

但我不会详细介绍,例如如何注册帐户以及安装过程中如何单击“下一步”。

希望之前对此毫无了解的新手读完这篇文章后,能够建立一个属于自己的网站。 (前提是会基本英语单词并善用搜索引擎)

已经有基本了解的同学可以跳过阅读或者直接关闭。

大部分评论都是相关的补充说明,对正常流程没有影响。如果你不感兴趣,你可以跳过它。

任何与文章相关的问题都可以在本文中评论,其他问题可以在相应的项目或文章下评论。

我会尽力保持本文中使用的技术和实践的更新,并随时接受更正。

安装 Node.js 的关键字步骤

什么是 Node.js?这得从什么是JS说起,JS是什么。 (为什么感觉是从盘古创造开始的?) 没错,就是网页的盘古。它是一种编程语言,几乎我们在网页中看到的所有交互和逻辑处理都是由它完成的。语法简单,易于学习和使用。 (当然,请不要小看它,虽然它的进入门槛较低,但它的上限也非常高。包括但不限于网站前后端、移动桌面应用、机器学习、计算机图形学的实现,等)Node.js诞生之前,都是运行在浏览器端。换句话说,它是一条鱼,而浏览器是一个装满水的水箱。 2008年,V8诞生。 2009 年,Node.js 诞生。并成为早期最著名的开源项目。也许你已经知道了一些,所以我稍后再讲。 .js是基于V8引擎的运行环境。 (当我第一次看到这句话时,我很困惑。)根据我的理解,它是一条鱼,V8是一个水泵,Node.js将这个水泵安装在你的计算机上。那么你的电脑上也有Node.js这个类似于浏览器的水箱了,你可以在里面运行它!当然,Node.js由于自身的定位和一些历史原因,与浏览器之间存在一些差异,因此不再展开。

建议下载长期支持版本而不是当前发布版本(因为如果是最新版本,很容易出现一些奇妙的bug)。

全部默认下一步安装。

打开 macOS 的命令提示符或终端。 (==,不懂请自行百度。)

Linux 用户关闭右上角的此选项卡。

如果后面提到输入命令,就会默认打开终端进行输入。

输入节点--。如果获取到的版本号与刚刚安装的版本号一致,则说明Node.js已安装成功。

Git 和安装 Git

代码,简称VS Code。目前最强大的编辑器,轻量且快速。 (宇宙第一编辑器)注:不是我们常听到的VS。 VS常指功能强大的IDE(集成开发环境),其规模比VS Code大一个数量级。 。

在此之前,我建议您先安装它。因为在安装Git Bash时,可以将VS Code设置为默认编辑器。

Git是由Linus(也是Linux的作者)开发的一个开源分布式版本控制系统,用于管理Linux开发。简而言之,它是一个版本管理工具。例如,如果设计师设计了海报的第三个版本,但客户说他还想要第一个版本,那么他可以通过Git快速回滚到原始版本。你只需要告诉Git每次变更的状态(Git会自动检测,你只需要掌握几个基本命令),而不用为每个版本保存一个压缩包,这样既方便又可以节省很多钱。空间。 (当然,这主要只适用于代码文本,因为Git的本质就是记录每一行代码的加减,如果是视频或者海报之类的二进制文件,就不会表现出任何优势了。当然,您还想处理这种情况。)

下载安装(如果国内速度太慢可以尝试一下)

macOS用户可以从官网下载安装包进行安装,也可以直接从App Store安装Xcode(会安装Git,但比较大)。

类似的工具还有:SVN。但始终推荐使用 Git,因为它更强大,并且背后有更强大的生态系统:。

登记

一听就觉得和Git有关系。 Git在英文中的意思是懒惰者、失败者。 Hub的意思是中心或枢纽。例如,USB集线器就是USB集线器。所以它是混乱的中心(大雾)。它是全球最大的开源项目和代码托管平台,也是众多开发者的交流场所。它也是世界上最大的同*友网站。代码托管本身使用了上面提到的Git技术。

注册一个帐户。 (虽然都是英文,但是不用害怕,也不会对使用造成障碍,只要记住最常用选项的含义,好好利用手边的翻译软件就可以了。)

注:注册时的英文用户名将成为您可以使用的免费域名前缀。

登录。

为什么要使用它?对于平民玩家来说,当他们第一次尝试建立自己的网站时,他们可能没有闲钱或决心购买自己的服务器和域名。提供此项服务。用户可以使用该服务部署自己的静态站点。

点击右上角的+ -> 新建,新建一个仓库。

@2x.png

因为这里已经有同名仓库了,所以提示我重复。

仓库名称必须是你的用户名..io。用户名是英文的。大小写无关紧要,但建议使用小写字母。 (因为时不时切换case你会觉得很麻烦)

为什么要用这个作为仓库名称呢? Pages服务的命名约定,也将成为您的专属域名。当然,您也可以购买自己的域名并用它来提供内容。

点击。

安装 Hexo

为什么使用 Hexo? Hexo 是一个基于 Node.js 并托管在其上的快速、简单且功能强大的博客框架。生态系统中有许多插件主题。您可以基于它快速生成一些静态页面。您可以使用别人的各种主题和插件,也可以自定义开发您想要的功能。为什么不...?其他常用的博客框架还有、、、等,但这些往往需要购买自己的服务器,并且不能静态部署到Pages上。 (当然,相应的功能和灵活性也得到了很大的提高。)静态站点的另一个优点是访问速度往往更快。还有静态网站生成器等。但这些大多是为编写文档而定制的。你也可以使用它们,但相比 Hexo 的博客定位,它们用于博客的插件、主题和解决方案要少得多。提供的功能与Hexo几乎相同(生成大量文件时甚至比Hexo更快),但它是基于GO语言的。以后如果你想要定制自己的网站,即使使用Hugo,你仍然需要使用Hugo来编写前端交互,所以基于它选择Hexo可以降低学习成本。 (如果你对 GO 感兴趣,你仍然可以尝试使用 Hugo,但本教程不会重点关注 Hugo。)所以对于新手来说,使用 Hexo 作为起点是一个不错的选择。 (当然,如果你有钱租服务器的话,可以考虑)

在终端中输入以下命令:

代码语言:txt

复制

<p style='margin-bottom:15px;color:#555555;font-size:15px;line-height:200%;text-indent:2em;'> <pre class="prism-token token line-numbers language-txt"><code class="language-txt" style="margin-left:0">npm install hexo-cli -g # 如果安装失败,可能是没有权限,可以尝试头部加上 sudo 重新执行 # sudo npm install hexo-cli -g</code></pre></p>

npm 是与 Node.js 一起安装的包管理工具。您可以将其视为 Node.js 附带的应用程序商店。当然是安装啦。 hexo-cli是hexo的终端工具,它可以帮助你生成一些模板文件以供以后使用。 -g 代表全局安装。也就是说在任何地方都可以使用,否则就只能在安装目录下使用。

此时,请先使用cd进入本地计算机上您打算存放网站代码的文件夹目录。 (或者右键单击文件夹 Git Bash Here)

例如:

注意:这是您自定义的目录,请勿复制粘贴

代码语言:txt

复制

<p style='margin-bottom:15px;color:#555555;font-size:15px;line-height:200%;text-indent:2em;'> <pre class="prism-token token line-numbers language-txt"><code class="language-txt" style="margin-left:0"># &#x27;#&#x27; 字符后的文字代表注释,不需要输入 # Windows cd C:\Users\YunYou\Documents\GitHub\ # macOS # cd /Users/yunyou/github/</code></pre></p>

接下来输入:

代码语言:txt

复制

<p style='margin-bottom:15px;color:#555555;font-size:15px;line-height:200%;text-indent:2em;'> <pre class="prism-token token line-numbers language-txt"><code class="language-txt" style="margin-left:0">hexo init 你的名字.github.io</code></pre></p>

hexo 正是因为我们之前安装了hexo-cli软件包,所以我们可以在终端中使用hexo命令。 init 初始化博客的模板文件。接下来是你要创建的文件夹,最好和你之前创建的仓库名称相同。

代码语言:txt

复制

<p style='margin-bottom:15px;color:#555555;font-size:15px;line-height:200%;text-indent:2em;'> <pre class="prism-token token line-numbers language-txt"><code class="language-txt" style="margin-left:0"># 进入你的博客文件夹 cd 你的名字.github.io # 默认安装所有 `package.json` 文件中提到的包 npm install # 你也可以缩写成 hexo s hexo server</code></pre></p>

意思是打开本地Hexo服务器。然后就可以打开浏览器,在地址栏输入:4000就可以看到本地网页了。

按 Ctrl + C 运行终端服务器。

至此,基本的模板页面已经搭建完成。

使用 Hexo 主题

Hexo 默认提供主题。

默认主题风格简单,功能较少。所以大多数人不使用默认主题。

这里我将演示如何使用我自己开发的主题。

星星

_(:з ∠)_对了,求Star,就是收藏的意思。单击链接后,它位于右上角。

你可以去看看示例效果。

Hexo-Theme-Yun 速度检测

--分数.png

-

当然,你还可以找到更多有趣、漂亮的主题。用法大致相同。

当你具备一定的开发能力后,你可以开发自己的主题,或者添加你想要的功能到hexo-theme-yun提交。

下载 Hexo 主题

进入终端(确保路径在你之前使用Hexo初始化的文件夹目录下,即xxx..io,后面简称Hexo目录),输入以下命令。

事实上,您也可以直接在 VS Code 中使用终端。

代码语言:txt

复制

<p style='margin-bottom:15px;color:#555555;font-size:15px;line-height:200%;text-indent:2em;'> <pre class="prism-token token line-numbers language-txt"><code class="language-txt" style="margin-left:0">git clone https://github.com/YunYouJun/hexo-theme-yun themes/yun</code></pre></p>

这里我们使用之前安装的Git。 git clone 表示克隆(即复制的功能)我的主题(托管于,链接为主题的地址),/yun 表示放在你的 Hexo 文件夹中。 /yun 文件夹(如果没有该文件夹,则会自动创建)。

编辑 Hexo 配置

右键该文件夹,使用 VS Code 打开,或者输入 VS Code 打开存放网站的文件夹。所有后续操作都将假设您已经在此工作目录中。

在你通过Hexo初始化生成的文件目录下会有一个.yml文件。

yml是文件的后缀,YAML是“YAML Ain&#39;t a”的缩写(YAML不是标记语言),但它实际上是一种标记语言。你可以把它看成是一种存储数据的文本格式,这也是它的用途。如果您听说过 JSON,您就会更好地了解它的用途。

这是Hexo的配置文件。您可以检查每个配置选项的含义。

找到.yml中的theme字段,将其后面的字段修改为yun。

代码语言:txt

复制

<p style='margin-bottom:15px;color:#555555;font-size:15px;line-height:200%;text-indent:2em;'> <pre class="prism-token token line-numbers language-txt"><code class="language-txt" style="margin-left:0">theme: yun</code></pre></p>

pug 是一个可以渲染为 HTML 字符串的模板引擎。类似的还有ejs、swig等,语法和设计理念不同。是一个CSS预处理器,可以渲染为CSS。类似的还有scss和less,它们也只是语法和设计理念上有所不同。

由于我的主题使用了pug和Hexo,而Hexo通常附带ejs和pg,因此您可能还需要输入以下命令来安装渲染器。

代码语言:txt

复制

<p style='margin-bottom:15px;color:#555555;font-size:15px;line-height:200%;text-indent:2em;'> <pre class="prism-token token line-numbers language-txt"><code class="language-txt" style="margin-left:0">npm install hexo-render-pug hexo-renderer-stylus</code></pre></p>

这时候,像以前一样使用hexo重启服务器,你会看到一个不同主题的页面。

自定义主题配置

启动时,将使用主题的默认配置。但这不一定是您想要的。

所以你可以对主题进行一些定制。

主题的配置文件放置在/yun/.yml 文件中。

等一下,你最好不要直接修改主题的默认配置。如果以后主题升级更新怎么办?我需要再次重新配置吗?

最好的解决方案是在博客根目录(而不是主题目录)中创建一个新的/_data/yun.yml。 (如果/_data目录不存在,请创建)

本主题将自定义配置与默认配置合并,因此您只需在 yun.yml 文件中自定义您需要的配置,其余的仍然会自动采用默认配置。

例如,我们需要更改头像。填写yun.yml。

您可以在该文件夹下新建一个文件夹来存放您的图片。您还可以使用上传图像文件来获取在线链接。

代码语言:txt

复制

<p style='margin-bottom:15px;color:#555555;font-size:15px;line-height:200%;text-indent:2em;'> <pre class="prism-token token line-numbers language-txt"><code class="language-txt" style="margin-left:0">avatar:   url: /images/avatar.jpg # 你的头像图片地址   rounded: true   opacity: 1</code></pre></p>

更改主题颜色,例如黑色。黑色的十六进制颜色代码是#。

代码语言:txt

复制

<p style='margin-bottom:15px;color:#555555;font-size:15px;line-height:200%;text-indent:2em;'> <pre class="prism-token token line-numbers language-txt"><code class="language-txt" style="margin-left:0">colors:   primary: "#000000"</code></pre></p>

然后您的主题颜色将更改为黑色。

这只是一个配置项的简单示例。更多配置可以参考我的或者直接在theme/yun/.yml中查看,根据自己的需求进行配置。

生成静态文件

到目前为止,我们的工作都是在当地进行的。我相信您也想在网上与您的朋友分享。

这就轮到Pages了,但是Pages只支持纯静态文件。

所以我们需要先使用下面的命令来生成站点的静态文件。

代码语言:txt

复制

<p style='margin-bottom:15px;color:#555555;font-size:15px;line-height:200%;text-indent:2em;'> <pre class="prism-token token line-numbers language-txt"><code class="language-txt" style="margin-left:0"># 如果进行多次生成,为了避免受错误缓存影响,最好使用 hexo clean 先清除一遍。 hexo generate # 缩写为 hexo g</code></pre></p>

这时你的文件夹目录中就会出现这个文件夹,里面包含了你网站的静态文件。

与远程仓库建立关联

接下来,我们将本地仓库与之前在 上创建的仓库关联起来。

代码语言:txt

复制

<p style='margin-bottom:15px;color:#555555;font-size:15px;line-height:200%;text-indent:2em;'> <pre class="prism-token token line-numbers language-txt"><code class="language-txt" style="margin-left:0">git init # 初始化 Git 仓库,只需要执行一次即可</code></pre></p>

在部署到Pages之前,我们最好先创建一个分支。

什么是分支机构? Git提供了版本管理功能,包括分支功能,你现在可以简单地将其理解为一个平行世界。

..io 部署后,Pages 将默认使用您的分支作为静态文件部署。

所以我们最好新建一个hexo分支(名字不重要)来存放Hexo源码,该分支用来存放部署的静态文件。

代码语言:txt

复制

<p style='margin-bottom:15px;color:#555555;font-size:15px;line-height:200%;text-indent:2em;'> <pre class="prism-token token line-numbers language-txt"><code class="language-txt" style="margin-left:0">git checkout -b hexo</code></pre></p>

此时hexo分支就创建成功了。 (后续工作将在hexo分支下进行)

可以使用 git -v 查看当前有哪些分支,并使用 git 分支名称切换到对应的分支。

部署

为了让部署到Pages更加方便,Hexo提供了hexo--git插件。

老规则,安装。

代码语言:txt

复制

<p style='margin-bottom:15px;color:#555555;font-size:15px;line-height:200%;text-indent:2em;'> <pre class="prism-token token line-numbers language-txt"><code class="language-txt" style="margin-left:0">npm install hexo-deployer-git</code></pre></p>

在 .yml 中配置。

代码语言:txt

复制

<p style='margin-bottom:15px;color:#555555;font-size:15px;line-height:200%;text-indent:2em;'> <pre class="prism-token token line-numbers language-txt"><code class="language-txt" style="margin-left:0">deploy:   type: git   repo: 你此前新建的仓库的链接 # 比如:https://github.com/YunYouJun/yunyoujun.github.io   branch: master # 默认使用 master 分支

  message: Update Hexo Static Content # 你可以自定义此次部署更新的说明</code></pre></p>

保存并部署!

第一次可能会要求您输入用户名和密码。输入密码时不会有***。别害怕,它已经被输入了。

代码语言:txt

复制

<p style='margin-bottom:15px;color:#555555;font-size:15px;line-height:200%;text-indent:2em;'> <pre class="prism-token token line-numbers language-txt"><code class="language-txt" style="margin-left:0">hexo deploy</code></pre></p>

等待后,打开 URL your name..io 查看您的在线网站。

使用https时,http可能无法正常打开。 HTTPS 是带有额外安全加密的 HTTP,浏览器默认会将 http 链接显示为不安全。出于安全考虑,建议启用强制 https 重定向。项目地址页面-&gt;页面-&gt;页面-&gt;HTTPS。 (转下图)此时http URL会自动重定向到https

备份和自动部署

我们目前仅将生成的静态文件部署到云端。

为了以防万一,我们也应该将网站的源代码文件推送到仓库进行备份。

代码语言:txt

复制

<p style='margin-bottom:15px;color:#555555;font-size:15px;line-height:200%;text-indent:2em;'> <pre class="prism-token token line-numbers language-txt"><code class="language-txt" style="margin-left:0"># 与远程 Git 仓库建立连接,只此一次即可 git remote add origin https://github.com/你的用户名/你的名字.github.io</code></pre></p>

接下来,准备提交。这几个命令将是您以后每次备份时都需要输入的命令。

代码语言:txt

复制

<p style='margin-bottom:15px;color:#555555;font-size:15px;line-height:200%;text-indent:2em;'> <pre class="prism-token token line-numbers language-txt"><code class="language-txt" style="margin-left:0"># 添加到缓存区 git add -A git commit -m "这次做了什么更改,简单描述下即可" # 推送至远程仓库 git push # 第一次提交,你可能需设置一下默认提交分支 # git push --set-upstream origin hexo</code></pre></p>

你可能会觉得每次push的时候都要输入这三个命令有点麻烦。

然后就可以编写bash脚本了。

例如,在根目录中创建一个新的.sh。

代码语言:txt

复制

<p style='margin-bottom:15px;color:#555555;font-size:15px;line-height:200%;text-indent:2em;'> <pre class="prism-token token line-numbers language-txt"><code class="language-txt" style="margin-left:0"># 如果没有消息后缀,默认提交信息为 `:pencil: update content` info=$1 if ["$info" = ""]; then info=":pencil: update content" fi git add -A git commit -m "$info" git push origin hexo</code></pre></p>

如果以后更新的话,只需要在终端中执行 sh .sh 即可。

更新很麻烦,每次部署也很麻烦。您可以使用持续集成来进行自动部署。

什么是持续集成?持续集成是一种软件开发实践。自动化软件构建以捕获错误。 CI是一家在线持续集成服务提供商。它会拉取您每次推送的代码并根据您的要求进行构建。我们可以趁机让它自动为网站生成静态文件,然后自动为我们部署。除此之外,您还可以使用诸如 .与其他人相比,你自己就有了仓库的token,不需要额外的设置,可以直接使用。推荐一款专门用来部署gh-pages的

更具体的自动化部署方案和操作步骤,可以参考我的朋友。

他在文章中详细介绍了、、、CI的部署方法。

也可以参考Hexo的官方文档

我不会在这里添加任何进一步的细节。

至此,你的网站就基本搭建完成了,你可以继续自定义主题了。

开始写文章

输入以下命令创建新的 xxx.md 文件。

代码语言:txt

复制

<p style='margin-bottom:15px;color:#555555;font-size:15px;line-height:200%;text-indent:2em;'> <pre class="prism-token token line-numbers language-txt"><code class="language-txt" style="margin-left:0">hexo new post xxx</code></pre></p>

md是md的后缀名,是一种简洁、方便的文本标记语言。你只需要记住一些简单的语法就可以快速编写。为什么要使用?首先,Hexo本身会转换成静态Html文件,方便用户写文章。它就像介于 Word 和 TXT 文本之间的东西。 Word很大,大部分功能都没有被实际使用,最终的文档往往包含很多冗余信息。但TXT无法实现加粗、标题、下划线、水平分割线等常用功能。 (这里所说的TXT只是纯文本格式的一个名称,实际上是纯文本文件。不过,通过语法和编译器,我们可以看到一些简单的样式。)

比如这篇文章就写完了。

代码语言:txt

复制

<p style='margin-bottom:15px;color:#555555;font-size:15px;line-height:200%;text-indent:2em;'> <pre class="prism-token token line-numbers language-txt"><code class="language-txt" style="margin-left:0"># 一级标题 ## 二级标题 **加粗文字**</code></pre></p>

更多语法(虽然说是多,但其实不多):

这是我写的一种风格:

上面是渲染效果,大家可以对比一下。

您可以创建一些自己的新自定义页面。

比如直接在Hexo目录下的文件夹中新建一个HTML文件并写入。

您还可以使用以下命令创建新页面。 (当然,但你也可以在其中编写 HTML,它也会被渲染。)

代码语言:txt

复制

<p style='margin-bottom:15px;color:#555555;font-size:15px;line-height:200%;text-indent:2em;'> <pre class="prism-token token line-numbers language-txt"><code class="language-txt" style="margin-left:0">hexo new page xxx</code></pre></p>

说到这里,不得不提一下这个主题的特殊之处。

生成您的妻子列表页面。只要按照一定的格式写就可以了。看。

常见问题解答视频?

没有视频,一来偷懒,二来文字更有利于更新勘误。

并且参考链接会经常出现在文章中,使其更易于使用。

如何绑定您的自定义域名?

首先,您必须拥有自己的域名。

为避免广告嫌疑,您可以自行前往相关域名提供商购买。

并使用 CNAME 解析为您的名字..io。 (当然,A记录也可以直接解析为Pages IP地址。)

在Hexo工作目录下的文件夹中新建一个CNAME文件(不带后缀)。

CNAME相当于告诉xxx..io可以服务你的域名。除了会被解析为html的特殊文件外,目录中的其余文件将原样复制到生成的静态文件夹中。所以需要在该文件夹下创建一个CNAME。生成静态文件时,会将CNAME复制到静态文件夹并部署到分支。如果您只是将其设置为(项目地址页面 -&gt; -&gt; -&gt; 页面 -&gt; ),它将自动添加到分支,但没有 CNAME 的部署将覆盖它。

只需填写您的域名作为内容即可。