加入收藏 | 设为首页 | 会员中心 | 我要投稿 源码网 (https://www.900php.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 创业 > 经验 > 正文

Hexo建站从入门到精通:本地环境配置、初始化、写作与部署

发布时间:2016-08-26 16:48:03 所属栏目:经验 来源:免费资源部落
导读:Hexo是一个基于node.js的静态博客生成系统,它使用markdown语法来写作,同时支持丰富的自定义标签系统。用户在本地安装Hexo系统并进行写作,通过一条命令,Hexo可以自动生成

rsync远程同步工具

服务端配置

1.安装rsync服务端。

执行以下命令安装rsync :

建立服务端的网站文件夹:mkdir -p /home/wwwroot/hexo #我习惯将网站文件存储在/home/wwwroot下,你可以更改成你自己的喜好

2.配置rsync用户。执行:adduser hexo,要求填写密码和一系列信息。完成后自动建立/home/hexo主目录以及hexo用户组。先确认一下你的S*S*H服务端配置,因为hexo的rsync部署也需要连接s*s*h,不支持使用密码登陆。

我们需要生成一对密钥:  vim /etc/s*sh/s*shd_config#Debian系系统可用,其他系统参考自己的路径。检查这三行是否被注释以及值是否正确:

如果不正确进行修改,重启s*s*h:service s*sh restart#服务名不同发行版不同,这是Debian系的名称。然后生成一对s*s*h认证密钥:   

在生成密钥时,会要求你输入一个加密密码,可以不填写,实现无密码登陆。生成完成后,.s*s*h目录下有id_rsa和id_rsa.pub两个文件,其中.pub文件是公钥文件,存放于服务器,另一个是私钥文件,存放于客户端。两者都是文本文件,可以直接用cat命令读取。将id_rsa下载回本地保存好。之后配置需要用到。

将公钥id_rsa.pub重命名并授予正确的权限:

3.nginx。执行以下命令下载nginx源码:

编译cloudflare patch过的openssl(如果你不使用HTTPS可以跳过本步骤) 

编译安装nginx:

执行nginx -V测试是否安装成功,之后进行nginx配置。首先建立虚拟主机配置文件夹:mkdir /usr/local/nginx/conf/vhost。修改主配置文件:vim /usr/local/nginx/conf/nginx.conf:

修改后文件内容如上,…代表省略内容。然后建立虚拟主机配置文件:

一个最基本的Hexo配置如下:

加入缓存配置:  

本站是全站HTTPS,使用Let’s encrypt证书,对HTTPS有大量配置,下面是本站的配置文件: 

保存你的配置文件,执行以下命令建立nginx服务并设置开机启动:

完成之后,执行:service nginx start,即可启动nginx。

本地配置

1.本地S*S*H配置。

本地s*s*h命令也依靠一个配置文件。用户定义配置文件的路径是~/.s*sh/config(PS:这一路径对Windows是可用的,如果你使用Git Bash,这就是为什么我强烈推荐Git Bash的原因)。建立文件夹:

编辑config文件,写入如下配置:

然后执行以下命令,如果连接成功就说明用户配置成功了。注意,这种方式需要用户具有访问bash的权限,因此请注意自己服务器的权限控制:

2.配置部署选项。

执行以下命令安装hexo rsync部署模块 :

PS:此节中home代指Hexo站点目录。编辑home/_config.yml文件,找到deploy项目,修改如下:

以root登陆VPS,执行以下命令来开放_config.yml中配置的rsync端口,如果没有iptables可以跳过这一步:

保存,进入home目录,执行以下命令即可将静态文件发布到服务端了。

至此,一切(woc终于结束了)搭建步骤完成,快访问你的域名看看效果吧~(解析请自行完成)

五、TroubleShooting

如果各位在阅读本文过程中有任何不理解的问题,或者任何步骤出错,解决方法如下:

  • 1、再仔细看一遍本文,是否有遗漏步骤。

  • 2、由于系统环境不同,你的系统可能与我有很大差别,请Googto搜索你的错误信息。

  • 3、若上述方法无果,或你发现本文有任何错误,欢迎在评论区留言指出,对于有意义的问题,我会摘录在这一节中。

  • 4、如果您发现本文引用或涉及了您的有关文章,请在下方留言,我会尽快加入参考中。

由@咖啡费德克士 提出的问题:我的博客中既有http又有https,然后浏览器就给拦截了部分js,有什么解决方法吗?

出于安全策略,浏览器默认不会加载HTTPS网页中的HTTP脚本文件。如果网站有HTTP和HTTPS版本,建议先对自己网站的访客做一个统计,看一下他们的软件版本。如果兼容性不是太大的问题,建议切换到全站HTTPS,禁用HTTP。

如果是引用了一些公共库,比如jQuery之类,建议直接谷歌搜索:公共库名+HTTPS+CDN,即可找到对应公共库支持HTTPS的CDN。PS:目前主流浏览器支持自适应协议栈,即写链接时省略协议栈,写成//domian.com,浏览器会根据当前页面的协议自动选择HTTP/HTTPS

另外,也可以使用一些简单粗暴的办法。比如直接将HTTP资源下载到本地,然后引用本地的链接。如果是多说评论头像之类,可以尝试反¥代评论头像。

注:相关网站建设技巧阅读请移步到建站教程频道。

(编辑:源码网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读