热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

个人建站&mac下安装hexo

title:个人建站&mac下安装hexodate:2018041816:34:02tags:[mac,blog,个人建站,markdown]这两天使用了markd

title: 个人建站&mac下安装hexo
date: 2018-04-18 16:34:02
tags: [mac,blog,个人建站,markdown]
---
这两天使用了markdown来写文章,发觉甚是好用。条理清晰,排版清爽。so,萌生了使用支持markdown的hexo来进行个人建站。

setup 1 安装node.js:

hexo的serv是基于node.js的,所以首先我们要安装node.js。
已经安装的可以跳过。

安装 Node.js 的最佳方式是使用 nvm。
nvm是node.js的安装包管理器。

nvm的安装,不要使用brew

  • 千万不要使用brew安装,被搞得死去活来,终端一关nvm就not found了
  • 千万不要使用brew安装,被搞得死去活来,终端一关nvm就not found了
  • 千万不要使用brew安装,被搞得死去活来,终端一关nvm就not found了
    重要的事情说三遍!!!

1.使用brew安装(请忽视)

mac下可以直接使用brew安装,没有安装brew的可以参考方法2。

brew install nvm

安装完成后记得刷新变量

source $(brew --prefix nvm)/nvm.sh 

2.linux安装方式,解决终端关闭后command not found:nvm 的问题

首先清理下

brew install nvm # brew 安装 nvm
nvm --version # 查看版本
brew uninstall nvm # 卸载nvm

curl方式

curl https://raw.github.com/creationix/nvm/master/install.sh | sh

Wget方式

wget -qO- https://raw.github.com/creationix/nvm/master/install.sh | sh

或直接指定版本

curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.2/install.sh | bash

安装后,在.zshrc(使用了oh-my-zsh)中添加全局变量,没有直接vi创建

vi ~/.zshrc

如果是bash,修改.bash_profile

vi ~/.bash_profile

添加变量,直接将下面三行代码放进去,“User/a”是我的用户根目录

export NVM_DIR="User/a/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh"
source $NVM_DIR/nvm.sh # 每次启动自动刷新变量

查看版本
nvm --version # 0.33.2

安装npm

npm是安装node.js的第三方插件工具。

使用以下命令安装npm稳定版本:

# nvm install stable # 安装稳定版本
nvm alias default stable # 指定并安装稳定版本

当然,也可以安装其它版本:

nvm install 5.0.0 # 安装 5.0.0 版本
nvm install 0.12.7 # 安装 0.12.7 版本

如果nvm not found,重启终端后重新运行。

stable安装完成后,可以发现当前版本是5.6.0(截止时间2018-04-18)

npm -v # 5.6.0

setup2 安装hexo

创建 hexo 文件夹

mkdir /Users/a/hexo
cd /Users/a/hexo

使用NPM安装hexo

npm install -g hexo-cli

使用init命令创建站点

hexo init myhome

编译启动

cd myhome
hexo g # hexo generate # 编译,生成静态文件
hexo s # hexo server # 启动服务

可以看到如下信息

INFO  Start processing
INFO  Hexo is running at http://localhost:4000/.      Press Ctrl+C to stop.

打开http://localhost:4000/或http://ip:4000,可以看到我们的站点已经运行。

个性设置

大部分站点配置信息都在_config.yml中,具体参考hexo官方文档:配置

setup3 安装next主题

官方next主题安装,请参考Next

本次我们安装的是ezlippi这个哥们根据next定制的个性化主题,这是他的Githup

使用Git下载主题

cd hexo
git clone https://github.com/EZLippi/hexo-theme 
mv -i hexo-theme/next myhome/themes 

应用hexo主题

vim /Users/a/hexo/myhome/_config.yml

找到 theme 字段,并将其值更改为 next,如下所示:

theme: next

其它的next配置,请参考next配置

hexo常用命令

hexo new '我的文章' # 生成新md文件

hexo g # hexo generate # 编译,生成静态文件
hexo d # hexo deploy # 部署
hexo s # hexo server # 启动服务

hexo clean # 清理缓存

hexo资源

以我的myhome为例,new出来的md文件存放在source/_posts下。

setup4 远程部署

Hexo 提供了一键部署功能,我们使用Rsync方式将代码部署到云主机上去。

安装 hexo-deployer-rsync

npm install hexo-deployer-rsync --save

修改配置:

deploy: 
  type: rsync
  host: 111.231.250.221
  user: hexouser
  root: myhome
  port: 22
  delete: true
  verbose: true
  ignore_errors: false
参数 描述 默认值
host 远程主机的地址
user 使用者名称
root 远程主机的根目录
port 端口 22
delete 删除远程主机上的旧文件 true
verbose 显示调试信息 true
ignore_errors 忽略错误 false
  • host是我自己的足迹
  • user是在主机上给hexo新建的用户
  • root是存放部署文件的目录

这个是我个人网站的截图,

当然,还有很多事情没做,nginx代理,next个性化设置,rss订阅等都还没弄

最近又开始忙了,只能以后再做了

参考文档:

Jekyll迁移到Hexo搭建个人博客
[hexo官方文档] (https://hexo.io/zh-cn/docs/)
[next 官方文档] (http://theme-next.iissnan.com/getting-started.html)


推荐阅读
  • 本文介绍了在MacOS上通过Homebrew安装Anaconda3,并配置环境变量以实现不同Python版本之间的快速切换。同时,提供了详细的步骤来创建和管理多个Python环境。 ... [详细]
  • 本文详细记录了在银河麒麟操作系统和龙芯架构上使用 Qt 5.15.2 进行项目打包时遇到的问题及解决方案,特别关注于 linuxdeployqt 工具的应用。 ... [详细]
  • 了解如何快速搭建属于自己的个人博客,无需编程基础,适合Mac和Windows用户。通过本文,您将学会使用GitHub Pages和Hexo构建一个完全自主的在线空间。 ... [详细]
  • 本文详细介绍了如何使用Python编写爬虫程序,从豆瓣电影Top250页面抓取电影信息。文章涵盖了从基础的网页请求到处理反爬虫机制,再到多页数据抓取的全过程,并提供了完整的代码示例。 ... [详细]
  • 在现代网络环境中,两台计算机之间的文件传输需求日益增长。传统的FTP和SSH方式虽然有效,但其配置复杂、步骤繁琐,难以满足快速且安全的传输需求。本文将介绍一种基于Go语言开发的新一代文件传输工具——Croc,它不仅简化了操作流程,还提供了强大的加密和跨平台支持。 ... [详细]
  • 在Python开发过程中,随着项目数量的增加,不同项目依赖于不同版本的库,容易引发依赖冲突。为了避免这些问题,并保持开发环境的整洁,可以使用Virtualenv和Virtualenvwrapper来创建和管理多个隔离的Python虚拟环境。 ... [详细]
  • 基于Node.js、Express、MongoDB和Socket.io的实时聊天应用开发
    本文详细介绍了使用Node.js、Express、MongoDB和Socket.io构建的实时聊天应用程序。涵盖项目结构、技术栈选择及关键依赖项的配置。 ... [详细]
  • 本文探讨了如何在Node.js环境中,通过Tor网络使用的SOCKS5代理执行HTTP请求。文中不仅提供了基础的实现方法,还介绍了几种常用的库和工具,帮助开发者解决遇到的问题。 ... [详细]
  • Node.js 入门指南(一)
    本文介绍了Node.js的安装步骤、如何创建第一个应用程序、NPM的基本使用以及处理回调函数的方法。通过实际操作示例,帮助初学者快速掌握Node.js的基础知识。 ... [详细]
  • Node.js 中 GET 和 POST 请求的数据处理
    本文详细介绍了如何在 Node.js 中使用 GET 和 POST 方法来处理客户端发送的数据。通过示例代码展示了如何解析 URL 参数和表单数据,并提供了完整的实现步骤。 ... [详细]
  • 本文详细介绍了如何在Linux系统中安装和配置GitLab Runner,包括添加YUM源、安装GitLab Runner以及注册Runner的具体步骤。 ... [详细]
  • 本教程旨在指导开发者如何在Mac上设置React Native的开发环境,以进行iOS应用的开发。文中详细介绍了必要的软件安装步骤,包括Xcode、Homebrew、Node.js、Watchman以及React Native CLI等工具的安装方法。 ... [详细]
  • 本文总结了在使用Ionic 5进行Android平台APK打包时遇到的问题,特别是针对QRScanner插件的改造。通过详细分析和提供具体的解决方法,帮助开发者顺利打包并优化应用性能。 ... [详细]
  • 本文深入探讨了Linux系统中网卡绑定(bonding)的七种工作模式。网卡绑定技术通过将多个物理网卡组合成一个逻辑网卡,实现网络冗余、带宽聚合和负载均衡,在生产环境中广泛应用。文章详细介绍了每种模式的特点、适用场景及配置方法。 ... [详细]
  • 本文详细介绍了如何在 Linux 平台上安装和配置 PostgreSQL 数据库。通过访问官方资源并遵循特定的操作步骤,用户可以在不同发行版(如 Ubuntu 和 Red Hat)上顺利完成 PostgreSQL 的安装。 ... [详细]
author-avatar
一米静心的阳光
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有