个人网站SEO及其它优化
最后一次更新时间:Monday, April 20th 2020, AM
SEO,是Search Engine Optimization的缩写,中文意思是搜索引擎优化。通俗的说,就是如何让你自己的网站更容易的被搜索引擎收录,并且取得一个较为靠前的排名,让别人更容易地搜索到你,为自己的网站增加更多的曝光率与点击率。
上边是优化后,进行Google搜索的结果展示。可以看到,无论是网站标题,还是站内二级博客,二级Tag,Google均对其进行了索引与收录。由于Baidu站长提交过程等待时间过长,我的网站还未被收录,这里就不进行展示了,不然还要等好久。下边就介绍一下我做了哪些优化
Baidu收录
首先是Baidu收录。作为国内最大的搜索引擎,纵然千般不爱,还是要
在提交链接到Baidu之前,首先需要购买一个属于自己的域名,不可以直接用Github Page提供的形如xxx.github.io这个域名。因为Github不允许Baidu的spider爬取自己的信息(例如Taobao)
注册完域名之后,绑定到自己的网站/Github Page的IP,这里就不赘述了,网上教程一大把。在浏览器测试可以访问后,就可以开始Baidu的优化了
首先呢,要注册一个Baidu站长的账号,然后在站长工具里提交绑定了你网站的域名。由于我这边早就已经做完这个流程,这里就不进行复现了。各位可以直接点击此处,提交链接到Baidu,如下图所示,填入自己网站URL,点击提交。
提交完之后,要证明网站的所有权,才能把其绑定到自己的Baidu账户下,方便日后通过站长工具进行分析、管理数据等操作。这里Baidu提供了三种验证方法,分别是
1.文件验证
2.html标签验证
3.CNAME验证
这里我选择的是CNAME验证,如下图:
然后在域名服务提供商那里,添加一条解析记录就可以生效。我的域名服务提供商是腾讯云
好啦,到这里就算是收录完成。之后还可以通过站点地图进行优化,后边我会说到。接下来让我们进行Google的收录
Google收录
Google的收录需要各位自行准备梯子,请自觉遵守中国大陆法律法规。
和Baidu一样,首先要准备一个Google账户,然后点此链接进入GoogleSearchConsole,点击添加资源,如下图。如果你使用的域名服务提供商是GoDaddy或NameCheap,则可以通过左边的网域选项,去验证所有权。我的域名服务提供商是腾讯云,只能通过右边的选项进行验证,在右边横线处填入你网站的完整URL。
然后点击继续,如下所示
下载GoogleSearchConsole提供给你的那个html文件,将其git push
到你网站的根目录下,然后回来点击验证,验证成功即可证明所有权,方便日后的分析、管理数据等操作。
Site Map
那么第一步,我们要做的就是
生成SiteMap
使用npm自动生成网站的SiteMap,然后将生成的SiteMap提交到Baidu和Google
执行如下两条命令,安装SiteMap生成插件
1 |
|
然后,在项目配置文件中,修改下图中的URL:
最后Ctrl S
保存,hexo g
重新生成,hexo d
部署到服务器上即可。接下来就是
提交到搜索引擎
提交到Baidu
百度提供了三种提交的方式,分别是主动推送、自动推送、Sitemap。其中主动提交更新的效果比较好,并且一次设置好,以后就可以自动执行。
通过如下命令下载插件:
1 |
|
然后在项目配置文件中,添加如下代码:
1 |
|
并且依旧在项目配置文件中,如下添加一条deploy的type
接着,是设置自动推送。在主题配置文件中,设置baidu_push: true,如下图
然后修改如下路径文件
1 |
|
添加代码如下:
1 |
|
最后回到Baidu站长平台,提交网站文件,如下图
到此,Baidu的优化就算是告一段落。但是Baidu的收录特别慢,一般都得是半个月左右,耐心等待吧。
接下来就是
提交到Google
提交到Google的方法和百度原理相同,过程简单很多。访问GoogleSearchConsole,然后添加即可,如下:
Google的收录速度非常快,我部署完Baidu又部署Google,晚上10点才弄完。第二天早上7点醒来发现Google已经成功收录
网站内URL优化
Hexo默认博客的URL是sitename/year/mounth/day/title
这样一个四级结构。结构越深越不利于搜索引擎的爬取,一般都以三级以下为较好的深度。
具体优化步骤如下:
打开项目配置文件,找到permalink
,如下第五行进行修改
1 |
|
之后Ctrl S
保存,hexo g
重新生成,hexo d
部署到服务器上即可。
PS:我个人在此处遇到了一些别的问题,即图片无法显示。在浏览器端按下F12
,打开开发人员工具,发现图片链接有误,生成静态页面的时候多加了一条反斜杠,如下图所示
我的解决方法也很暴力,直接在源码里多加一条反斜杠。
如果各位看官有什么更好的解决之道,望不吝赐教。
CDN
介绍
CDN的全称是Content Delivery NetWork,即内容分发网络。举个栗子,在大家刷抖音短视频时,向抖音服务器发送一条请求,抖音服务器基于推荐算法向你分发一条你可能感兴趣的短视频,那么大概的网络拓扑应该是如下图所示
可以看到,这么多客户端同时连接根服务器的话,根服务器需要一个十分可观的带宽进行支持,就好比很多车辆一起汇入主干路,那么这条主干路一定要十分宽敞。但是一条已经建成的马路,对其进行扩容是十分复杂的工程,并且考虑到高峰期,资源浪费十分严重,再就是较高的带宽的预算也非常高。以百度云盘为例,存储设施、电费等,均不及带宽服务费所占的支出,这也是为什么百度云盘限速厉害,吃相如此难看的本因。
那么CDN的运作原理,如下图所示
在服务器与客户端之间,多了一层代理服务器。它们起到了分流的作用,就好比汇入主干路的匝道。也许你会想,那反正都要汇入主干路,根服务器的带宽要求岂不是并没有降低?这里又要涉及到CDN的另一个作用,就是本地缓存。这些代理服务器也是服务器,那么它们也一样拥有本地存储能力。抖音视频文件存储的时候会基于文件内容生成一个哈希串,哈希串是一个文件的ID,根据它可以判断出文件的一致性。比如用户A刷到了一条视频,这个视频首先从根服务器传输到代理服务器,再从代理服务器传输到用户手里。那么用户B也刷到这条视频的时候,还需要重复上述过程吗,并不是。该视频已经缓存在代理服务器中,直接从代理服务器给用户B进行分发即可,无需浪费根服务器带宽。就好比汽车加油,大家不是亲自去中东抗油桶,而是在家附近的加油站加油,是这样一个分销的过程。
好说了这么多,我们言归正传,介绍一下CDN技术是如何对我们的个人网页进行优化的吧。网站是基于Github Page搭建的,Github服务器架设在美国,由于GFW的原因,Github服务器在国内访问并不是很顺畅,而且还不稳定(参考Google)。我们这里采用CDN,无需连接到Github服务器,而是连接到CDN的服务器,不用担心GFW的影响。下面就开始正式的部署教程
部署
我们选择的是Cloudflare这个CDN提供商,它的主要优势就是:对个人免费。首先,就是点击该链接:Cloudflare注册,进行注册,然后添加站点
方案选择免费方案
然后添加DNS记录,这里Cloudflare会自动扫描你的域名解析。此处我们无需进行更改,点击继续即可(如下面两幅图,腾讯云控制台只有一条www的解析记录,会被Cloudflare扫描出来并自动添加)。由于我的ryanyhliu.com
已经添加,这里就用另外一个域名做示范。
这里选择左边的默认方法
然后来到下图
这里我们需要在域名服务提供商处,修改域名的DNS解析服务器,改为图中Cloudflare提供的DNS服务器。由于我使用的是腾讯云,这里就用腾讯云配置进行示范。切换到腾讯云域名服务页面,点击管理(下图红色箭头指向)
进入如下页面,然后接着按图操作,点击修改,按照Cloudflare中给出的DNS服务器域名进行修改,用rayne.ns.cloudflare.com
| ridge.ns.cloudflare.com
替换 f1g1ns1.dnspod.net
| f1g1ns2.dnspod.net
, 之后回到Cloudflare页面,点击“完成,检查名称服务器”
之后,来到下图所示页面
把https打开,然后点击完成,即成功添加站点。稍后我们可以在Cloudflare管理页面进行更多设置。下图为Cloudflare站点管理页面
如图红框所示,还有很多很多的自定义配置可供选择,这里我就不展开细讲了,大家感兴趣的话可以自行搜索设置中的关键词去查询,修行在个人~(我实在是写吐了,不想写了,艹)
除特别声明外,本站所有文章均采用 CC BY-SA 4.0 协议 ,转载请注明出处!